/**
 * This file was automatically generated from OpenAPI schema.
 * Do not manually modify this file.
 */

const RegistrySchema: Record<string, unknown> = {
  "openapi": "3.0.0",
  "info": {
    "title": "Registry",
    "description": "OpenAPI schema for Meshery's capabilities registry. The registry is the catalog into which models, components, relationships, connections, credentials, and policies (and, in the future, workflows and profiles) are registered into service. Registered capabilities can be used in designs, views, tests, policies, and workflows. These operations are served under `/api/registry`; the legacy `/api/meshmodels` routes remain available on Meshery Server as deprecated aliases of the same operations, and the singular `/api/meshmodel/components/register` registrant route is retained for backward compatibility.",
    "version": "v1beta1",
    "contact": {
      "name": "Meshery Maintainers",
      "email": "maintainers@meshery.io",
      "url": "https://meshery.io"
    },
    "license": {
      "name": "Apache 2.0",
      "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
    }
  },
  "security": [
    {
      "jwt": []
    }
  ],
  "tags": [
    {
      "name": "Registry",
      "description": "Operations on Meshery's capabilities registry."
    }
  ],
  "paths": {
    "/api/registry/models": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryModels",
        "summary": "List registered models",
        "description": "Returns a paginated list of models registered in the capabilities registry. Each entry carries a `duplicates` count of other registered entries sharing the same name and version.",
        "security": [],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by model status (e.g. `registered`, `ignored`, `duplicate`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "Filter by model ID.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "registrant",
            "in": "query",
            "description": "Filter by the registrant (host) that registered the model.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "components",
            "in": "query",
            "description": "When `true`, embeds the model's component definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "relationships",
            "in": "query",
            "description": "When `true`, embeds the model's relationship definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of registered models.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered models.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "models": {
                          "type": "array",
                          "items": {
                            "description": "A registered model, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/model.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema used for the definition.",
                                    "x-order": 2,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "schemaVersion"
                                    },
                                    "default": "models.meshery.io/v1beta2",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "description": "Version of the model definition.",
                                    "type": "string",
                                    "x-order": 3,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "version"
                                    },
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "The unique name for the model within the scope of a registrant.",
                                    "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                    "pattern": "^[a-z0-9-]+$",
                                    "examples": [
                                      "cert-manager"
                                    ],
                                    "x-order": 4,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "name"
                                    },
                                    "default": "untitled-model"
                                  },
                                  "displayName": {
                                    "description": "Human-readable name for the model.",
                                    "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "type": "string",
                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                    "examples": [
                                      "Cert Manager"
                                    ],
                                    "x-order": 5,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "displayName"
                                    },
                                    "default": "Untitled Model"
                                  },
                                  "description": {
                                    "type": "string",
                                    "default": "A new Meshery model.",
                                    "description": "Description of the model.",
                                    "minLength": 1,
                                    "maxLength": 1000,
                                    "x-order": 6,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "description,omitempty"
                                    }
                                  },
                                  "status": {
                                    "type": "string",
                                    "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate"
                                    ],
                                    "x-order": 7,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "status"
                                    },
                                    "default": "enabled"
                                  },
                                  "registrant": {
                                    "description": "Connection identifying the entity that registered this model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrant",
                                      "gorm": "foreignKey:RegistrantId;references:ID"
                                    },
                                    "x-order": 8,
                                    "x-go-type": "connectionv1beta1.Connection",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                      "name": "connectionv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/connection.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "name",
                                      "type",
                                      "subType",
                                      "kind",
                                      "status"
                                    ],
                                    "properties": {
                                      "id": {
                                        "description": "Connection ID",
                                        "x-order": 1,
                                        "x-go-name": "ID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "id",
                                          "yaml": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "name",
                                          "yaml": "name"
                                        },
                                        "x-order": 2,
                                        "type": "string",
                                        "description": "Connection Name"
                                      },
                                      "credentialId": {
                                        "x-go-name": "CredentialID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "credential_id",
                                          "yaml": "credentialId"
                                        },
                                        "x-order": 3,
                                        "description": "Associated Credential ID",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "type": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "type",
                                          "yaml": "type"
                                        },
                                        "x-order": 4,
                                        "type": "string",
                                        "description": "Connection Type (platform, telemetry, collaboration)"
                                      },
                                      "subType": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "sub_type",
                                          "yaml": "subType"
                                        },
                                        "x-order": 5,
                                        "type": "string",
                                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                      },
                                      "kind": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "kind",
                                          "yaml": "kind"
                                        },
                                        "x-order": 6,
                                        "type": "string",
                                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                      },
                                      "metadata": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 7,
                                        "x-go-type": "core.Map",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "type": "object",
                                        "description": "Additional connection metadata"
                                      },
                                      "status": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "status",
                                          "yaml": "status"
                                        },
                                        "x-order": 8,
                                        "description": "Connection Status",
                                        "type": "string",
                                        "enum": [
                                          "discovered",
                                          "registered",
                                          "connected",
                                          "ignored",
                                          "maintenance",
                                          "disconnected",
                                          "deleted",
                                          "not found"
                                        ]
                                      },
                                      "user_id": {
                                        "x-go-name": "UserID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "owner",
                                          "yaml": "user_id"
                                        },
                                        "x-order": 9,
                                        "description": "User ID who owns this connection",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "created_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-order": 10,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-order": 11,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "deleted_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "deleted_at",
                                          "yaml": "deleted_at"
                                        },
                                        "x-order": 12,
                                        "description": "SQL null Timestamp to handle null values of time.",
                                        "x-go-type": "meshcore.NullTime",
                                        "x-go-type-import": {
                                          "name": "meshcore",
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "environments": {
                                        "type": "array",
                                        "description": "Associated environments for this connection",
                                        "items": {
                                          "x-go-type": "*environmentv1beta1.Environment",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                            "name": "environmentv1beta1"
                                          },
                                          "$id": "https://schemas.meshery.io/environment.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "title": "Environment",
                                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "example": {
                                            "id": "00000000-0000-0000-0000-000000000000",
                                            "schemaVersion": "environments.meshery.io/v1beta1",
                                            "name": "Production Environment",
                                            "description": "Connections and credentials for the production cluster.",
                                            "organization_id": "00000000-0000-0000-0000-000000000000",
                                            "owner": "00000000-0000-0000-0000-000000000000",
                                            "created_at": "0001-01-01T00:00:00Z",
                                            "metadata": {},
                                            "updated_at": "0001-01-01T00:00:00Z",
                                            "deleted_at": null
                                          },
                                          "required": [
                                            "id",
                                            "schemaVersion",
                                            "name",
                                            "description",
                                            "organization_id"
                                          ],
                                          "properties": {
                                            "id": {
                                              "description": "ID",
                                              "x-order": 1,
                                              "x-go-name": "ID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "id",
                                                "yaml": "id"
                                              },
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the environment conforms.",
                                              "x-order": 2,
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "schemaVersion",
                                                "db": "-",
                                                "gorm": "-"
                                              },
                                              "default": "environments.meshery.io/v1beta1",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "name": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "name",
                                                "yaml": "name"
                                              },
                                              "x-order": 3,
                                              "type": "string",
                                              "maxLength": 100,
                                              "description": "Environment name"
                                            },
                                            "description": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "description",
                                                "yaml": "description"
                                              },
                                              "x-order": 4,
                                              "type": "string",
                                              "maxLength": 1000,
                                              "description": "Environment description"
                                            },
                                            "organization_id": {
                                              "x-go-name": "OrganizationID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "organization_id",
                                                "yaml": "organization_id"
                                              },
                                              "x-order": 5,
                                              "description": "Environment organization ID",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "owner": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "owner",
                                                "yaml": "owner"
                                              },
                                              "x-order": 6,
                                              "description": "Environment owner",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "created_at": {
                                              "x-order": 7,
                                              "description": "Timestamp when the resource was created.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "CreatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "created_at",
                                                "yaml": "created_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "metadata": {
                                              "description": "Additional metadata associated with the environment.",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "metadata",
                                                "yaml": "metadata"
                                              },
                                              "x-order": 8,
                                              "x-go-type": "core.Map",
                                              "x-go-type-skip-optional-pointer": true,
                                              "type": "object"
                                            },
                                            "updated_at": {
                                              "x-order": 9,
                                              "description": "Timestamp when the resource was updated.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "UpdatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "updated_at",
                                                "yaml": "updated_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "deleted_at": {
                                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                              "nullable": true,
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "deleted_at",
                                                "yaml": "deleted_at"
                                              },
                                              "x-go-type": "core.NullTime",
                                              "x-go-import": "database/sql",
                                              "x-order": 10,
                                              "x-go-type-import": {
                                                "name": "meshcore",
                                                "path": "github.com/meshery/schemas/models/core"
                                              },
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-type-skip-optional-pointer": true
                                            }
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "-",
                                          "yaml": "environments",
                                          "gorm": "-"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "x-order": 13
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 14,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "db": "-",
                                          "gorm": "-"
                                        },
                                        "default": "connections.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      }
                                    }
                                  },
                                  "registrantId": {
                                    "description": "ID of the registrant.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrantId",
                                      "gorm": "column:connection_id"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "categoryId": {
                                    "description": "ID of the category.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "-",
                                      "yaml": "-",
                                      "gorm": "categoryID"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "category": {
                                    "description": "Category the model belongs to.",
                                    "x-order": 9,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "category",
                                      "gorm": "foreignKey:CategoryId;references:ID"
                                    },
                                    "x-go-type": "categoryv1beta1.CategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/category",
                                      "name": "categoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "object",
                                    "additionalProperties": false,
                                    "required": [
                                      "id",
                                      "name",
                                      "metadata"
                                    ],
                                    "properties": {
                                      "id": {
                                        "x-order": 1,
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name",
                                          "gorm": "name"
                                        },
                                        "default": "Uncategorized",
                                        "description": "The category of the model that determines the main grouping.",
                                        "helperText": "Select a model category",
                                        "enum": [
                                          "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"
                                        ],
                                        "x-order": 2
                                      },
                                      "metadata": {
                                        "description": "Additional metadata associated with the category.",
                                        "type": "object",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "metadata,omitempty",
                                          "json": "metadata,omitempty",
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 3
                                      }
                                    }
                                  },
                                  "subCategory": {
                                    "description": "Sub-category the model belongs to.",
                                    "x-order": 10,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "subCategory",
                                      "json": "subCategory"
                                    },
                                    "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                      "name": "subcategoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "string",
                                    "title": "SubCategory",
                                    "default": "Uncategorized",
                                    "enum": [
                                      "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"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 100
                                  },
                                  "metadata": {
                                    "type": "object",
                                    "description": "Metadata containing additional information associated with the model.",
                                    "required": [
                                      "svgWhite",
                                      "svgColor"
                                    ],
                                    "properties": {
                                      "capabilities": {
                                        "type": "array",
                                        "description": "Capabilities associated with the model",
                                        "items": {
                                          "x-go-type": "capabilityv1alpha1.Capability",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                            "name": "capabilityv1alpha1"
                                          },
                                          "$id": "https://schemas.meshery.io/capability.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "required": [
                                            "description",
                                            "schemaVersion",
                                            "version",
                                            "displayName",
                                            "kind",
                                            "type",
                                            "subType",
                                            "entityState",
                                            "key",
                                            "status"
                                          ],
                                          "x-oapi-codegen-extra-tags": {
                                            "gorm": "type:bytes;serializer:json"
                                          },
                                          "properties": {
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the capability definition conforms.",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "version": {
                                              "description": "Version of the capability definition.",
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            },
                                            "displayName": {
                                              "description": "Name of the capability in human-readible format.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "description": {
                                              "type": "string",
                                              "description": "A written representation of the purpose and characteristics of the capability.",
                                              "maxLength": 5000
                                            },
                                            "kind": {
                                              "description": "Top-level categorization of the capability",
                                              "additionalProperties": false,
                                              "anyOf": [
                                                {
                                                  "const": "action",
                                                  "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                },
                                                {
                                                  "const": "mutate",
                                                  "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                },
                                                {
                                                  "const": "view",
                                                  "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                },
                                                {
                                                  "const": "interaction",
                                                  "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                }
                                              ],
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "type": {
                                              "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "subType": {
                                              "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "key": {
                                              "description": "Key that backs the capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "entityState": {
                                              "description": "State of the entity in which the capability is applicable.",
                                              "type": "array",
                                              "items": {
                                                "type": "string",
                                                "enum": [
                                                  "declaration",
                                                  "instance"
                                                ],
                                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                              }
                                            },
                                            "status": {
                                              "type": "string",
                                              "description": "Status of the capability",
                                              "default": "enabled",
                                              "enum": [
                                                "enabled",
                                                "disabled"
                                              ]
                                            },
                                            "metadata": {
                                              "type": "object",
                                              "description": "Metadata contains additional information associated with the capability. Extension point.",
                                              "additionalProperties": true
                                            }
                                          },
                                          "default": [
                                            {
                                              "description": "Configure the visual styles for the component",
                                              "displayName": "Styling",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Change the shape of the component",
                                              "displayName": "Change Shape",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "shape",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Drag and Drop a component into a parent component in graph view",
                                              "displayName": "Compound Drag And Drop",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "interaction",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "compoundDnd",
                                              "type": "graph",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Add text to nodes body",
                                              "displayName": "Body Text",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "body-text",
                                              "type": "style",
                                              "version": "0.7.0"
                                            }
                                          ]
                                        },
                                        "x-order": 1
                                      },
                                      "isAnnotation": {
                                        "type": "boolean",
                                        "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "isAnnotation"
                                        },
                                        "x-order": 2,
                                        "default": false
                                      },
                                      "primaryColor": {
                                        "type": "string",
                                        "description": "Primary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00b39f",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "primaryColor"
                                        },
                                        "x-order": 3
                                      },
                                      "secondaryColor": {
                                        "type": "string",
                                        "description": "Secondary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00D3A9",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "secondaryColor"
                                        },
                                        "x-order": 4
                                      },
                                      "svgWhite": {
                                        "type": "string",
                                        "description": "SVG representation of the model in white color.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgWhite"
                                        },
                                        "x-order": 5,
                                        "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>"
                                      },
                                      "svgColor": {
                                        "type": "string",
                                        "description": "SVG representation of the model in colored format.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgColor"
                                        },
                                        "x-order": 6,
                                        "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>"
                                      },
                                      "svgComplete": {
                                        "type": "string",
                                        "description": "SVG representation of the complete model.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgComplete"
                                        },
                                        "x-order": 7
                                      },
                                      "shape": {
                                        "description": "Visual shape used to render the model's entities in design canvases.",
                                        "x-order": 8,
                                        "type": "string",
                                        "enum": [
                                          "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"
                                        ]
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "json": "metadata"
                                    },
                                    "x-order": 11,
                                    "additionalProperties": true
                                  },
                                  "model": {
                                    "description": "Registrant-defined data associated with the model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-order": 12,
                                    "type": "object",
                                    "required": [
                                      "version"
                                    ],
                                    "properties": {
                                      "version": {
                                        "description": "Version of the model as defined by the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "version"
                                        },
                                        "x-order": 1,
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      }
                                    }
                                  },
                                  "relationships": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationships"
                                    },
                                    "description": "The relationships of the model."
                                  },
                                  "components": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "components"
                                    },
                                    "description": "The components of the model."
                                  },
                                  "componentsCount": {
                                    "type": "integer",
                                    "description": "Number of components associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "componentsCount",
                                      "gorm": "-"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "relationshipsCount": {
                                    "type": "integer",
                                    "description": "Number of relationships associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationshipsCount"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the model was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "created_at",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the model was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updated_at",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "schemaVersion",
                                  "displayName",
                                  "status",
                                  "subCategory",
                                  "model",
                                  "name",
                                  "description",
                                  "version",
                                  "registrant",
                                  "category",
                                  "categoryId",
                                  "registrantId",
                                  "relationshipsCount",
                                  "componentsCount",
                                  "components",
                                  "relationships"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this model's name and version.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The models matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryModelsByName",
        "summary": "Get registered models by name",
        "description": "Returns the registered model entries matching the given model name. Multiple entries (versions or duplicate registrations) may match.",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "When `true`, the model name is matched greedily (substring match).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "components",
            "in": "query",
            "description": "When `true`, embeds the model's component definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "relationships",
            "in": "query",
            "description": "When `true`, embeds the model's relationship definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching registered models.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered models.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "models": {
                          "type": "array",
                          "items": {
                            "description": "A registered model, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/model.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema used for the definition.",
                                    "x-order": 2,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "schemaVersion"
                                    },
                                    "default": "models.meshery.io/v1beta2",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "description": "Version of the model definition.",
                                    "type": "string",
                                    "x-order": 3,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "version"
                                    },
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "The unique name for the model within the scope of a registrant.",
                                    "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                    "pattern": "^[a-z0-9-]+$",
                                    "examples": [
                                      "cert-manager"
                                    ],
                                    "x-order": 4,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "name"
                                    },
                                    "default": "untitled-model"
                                  },
                                  "displayName": {
                                    "description": "Human-readable name for the model.",
                                    "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "type": "string",
                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                    "examples": [
                                      "Cert Manager"
                                    ],
                                    "x-order": 5,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "displayName"
                                    },
                                    "default": "Untitled Model"
                                  },
                                  "description": {
                                    "type": "string",
                                    "default": "A new Meshery model.",
                                    "description": "Description of the model.",
                                    "minLength": 1,
                                    "maxLength": 1000,
                                    "x-order": 6,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "description,omitempty"
                                    }
                                  },
                                  "status": {
                                    "type": "string",
                                    "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate"
                                    ],
                                    "x-order": 7,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "status"
                                    },
                                    "default": "enabled"
                                  },
                                  "registrant": {
                                    "description": "Connection identifying the entity that registered this model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrant",
                                      "gorm": "foreignKey:RegistrantId;references:ID"
                                    },
                                    "x-order": 8,
                                    "x-go-type": "connectionv1beta1.Connection",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                      "name": "connectionv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/connection.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "name",
                                      "type",
                                      "subType",
                                      "kind",
                                      "status"
                                    ],
                                    "properties": {
                                      "id": {
                                        "description": "Connection ID",
                                        "x-order": 1,
                                        "x-go-name": "ID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "id",
                                          "yaml": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "name",
                                          "yaml": "name"
                                        },
                                        "x-order": 2,
                                        "type": "string",
                                        "description": "Connection Name"
                                      },
                                      "credentialId": {
                                        "x-go-name": "CredentialID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "credential_id",
                                          "yaml": "credentialId"
                                        },
                                        "x-order": 3,
                                        "description": "Associated Credential ID",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "type": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "type",
                                          "yaml": "type"
                                        },
                                        "x-order": 4,
                                        "type": "string",
                                        "description": "Connection Type (platform, telemetry, collaboration)"
                                      },
                                      "subType": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "sub_type",
                                          "yaml": "subType"
                                        },
                                        "x-order": 5,
                                        "type": "string",
                                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                      },
                                      "kind": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "kind",
                                          "yaml": "kind"
                                        },
                                        "x-order": 6,
                                        "type": "string",
                                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                      },
                                      "metadata": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 7,
                                        "x-go-type": "core.Map",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "type": "object",
                                        "description": "Additional connection metadata"
                                      },
                                      "status": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "status",
                                          "yaml": "status"
                                        },
                                        "x-order": 8,
                                        "description": "Connection Status",
                                        "type": "string",
                                        "enum": [
                                          "discovered",
                                          "registered",
                                          "connected",
                                          "ignored",
                                          "maintenance",
                                          "disconnected",
                                          "deleted",
                                          "not found"
                                        ]
                                      },
                                      "user_id": {
                                        "x-go-name": "UserID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "owner",
                                          "yaml": "user_id"
                                        },
                                        "x-order": 9,
                                        "description": "User ID who owns this connection",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "created_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-order": 10,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-order": 11,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "deleted_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "deleted_at",
                                          "yaml": "deleted_at"
                                        },
                                        "x-order": 12,
                                        "description": "SQL null Timestamp to handle null values of time.",
                                        "x-go-type": "meshcore.NullTime",
                                        "x-go-type-import": {
                                          "name": "meshcore",
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "environments": {
                                        "type": "array",
                                        "description": "Associated environments for this connection",
                                        "items": {
                                          "x-go-type": "*environmentv1beta1.Environment",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                            "name": "environmentv1beta1"
                                          },
                                          "$id": "https://schemas.meshery.io/environment.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "title": "Environment",
                                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "example": {
                                            "id": "00000000-0000-0000-0000-000000000000",
                                            "schemaVersion": "environments.meshery.io/v1beta1",
                                            "name": "Production Environment",
                                            "description": "Connections and credentials for the production cluster.",
                                            "organization_id": "00000000-0000-0000-0000-000000000000",
                                            "owner": "00000000-0000-0000-0000-000000000000",
                                            "created_at": "0001-01-01T00:00:00Z",
                                            "metadata": {},
                                            "updated_at": "0001-01-01T00:00:00Z",
                                            "deleted_at": null
                                          },
                                          "required": [
                                            "id",
                                            "schemaVersion",
                                            "name",
                                            "description",
                                            "organization_id"
                                          ],
                                          "properties": {
                                            "id": {
                                              "description": "ID",
                                              "x-order": 1,
                                              "x-go-name": "ID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "id",
                                                "yaml": "id"
                                              },
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the environment conforms.",
                                              "x-order": 2,
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "schemaVersion",
                                                "db": "-",
                                                "gorm": "-"
                                              },
                                              "default": "environments.meshery.io/v1beta1",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "name": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "name",
                                                "yaml": "name"
                                              },
                                              "x-order": 3,
                                              "type": "string",
                                              "maxLength": 100,
                                              "description": "Environment name"
                                            },
                                            "description": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "description",
                                                "yaml": "description"
                                              },
                                              "x-order": 4,
                                              "type": "string",
                                              "maxLength": 1000,
                                              "description": "Environment description"
                                            },
                                            "organization_id": {
                                              "x-go-name": "OrganizationID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "organization_id",
                                                "yaml": "organization_id"
                                              },
                                              "x-order": 5,
                                              "description": "Environment organization ID",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "owner": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "owner",
                                                "yaml": "owner"
                                              },
                                              "x-order": 6,
                                              "description": "Environment owner",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "created_at": {
                                              "x-order": 7,
                                              "description": "Timestamp when the resource was created.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "CreatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "created_at",
                                                "yaml": "created_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "metadata": {
                                              "description": "Additional metadata associated with the environment.",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "metadata",
                                                "yaml": "metadata"
                                              },
                                              "x-order": 8,
                                              "x-go-type": "core.Map",
                                              "x-go-type-skip-optional-pointer": true,
                                              "type": "object"
                                            },
                                            "updated_at": {
                                              "x-order": 9,
                                              "description": "Timestamp when the resource was updated.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "UpdatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "updated_at",
                                                "yaml": "updated_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "deleted_at": {
                                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                              "nullable": true,
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "deleted_at",
                                                "yaml": "deleted_at"
                                              },
                                              "x-go-type": "core.NullTime",
                                              "x-go-import": "database/sql",
                                              "x-order": 10,
                                              "x-go-type-import": {
                                                "name": "meshcore",
                                                "path": "github.com/meshery/schemas/models/core"
                                              },
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-type-skip-optional-pointer": true
                                            }
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "-",
                                          "yaml": "environments",
                                          "gorm": "-"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "x-order": 13
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 14,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "db": "-",
                                          "gorm": "-"
                                        },
                                        "default": "connections.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      }
                                    }
                                  },
                                  "registrantId": {
                                    "description": "ID of the registrant.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrantId",
                                      "gorm": "column:connection_id"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "categoryId": {
                                    "description": "ID of the category.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "-",
                                      "yaml": "-",
                                      "gorm": "categoryID"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "category": {
                                    "description": "Category the model belongs to.",
                                    "x-order": 9,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "category",
                                      "gorm": "foreignKey:CategoryId;references:ID"
                                    },
                                    "x-go-type": "categoryv1beta1.CategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/category",
                                      "name": "categoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "object",
                                    "additionalProperties": false,
                                    "required": [
                                      "id",
                                      "name",
                                      "metadata"
                                    ],
                                    "properties": {
                                      "id": {
                                        "x-order": 1,
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name",
                                          "gorm": "name"
                                        },
                                        "default": "Uncategorized",
                                        "description": "The category of the model that determines the main grouping.",
                                        "helperText": "Select a model category",
                                        "enum": [
                                          "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"
                                        ],
                                        "x-order": 2
                                      },
                                      "metadata": {
                                        "description": "Additional metadata associated with the category.",
                                        "type": "object",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "metadata,omitempty",
                                          "json": "metadata,omitempty",
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 3
                                      }
                                    }
                                  },
                                  "subCategory": {
                                    "description": "Sub-category the model belongs to.",
                                    "x-order": 10,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "subCategory",
                                      "json": "subCategory"
                                    },
                                    "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                      "name": "subcategoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "string",
                                    "title": "SubCategory",
                                    "default": "Uncategorized",
                                    "enum": [
                                      "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"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 100
                                  },
                                  "metadata": {
                                    "type": "object",
                                    "description": "Metadata containing additional information associated with the model.",
                                    "required": [
                                      "svgWhite",
                                      "svgColor"
                                    ],
                                    "properties": {
                                      "capabilities": {
                                        "type": "array",
                                        "description": "Capabilities associated with the model",
                                        "items": {
                                          "x-go-type": "capabilityv1alpha1.Capability",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                            "name": "capabilityv1alpha1"
                                          },
                                          "$id": "https://schemas.meshery.io/capability.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "required": [
                                            "description",
                                            "schemaVersion",
                                            "version",
                                            "displayName",
                                            "kind",
                                            "type",
                                            "subType",
                                            "entityState",
                                            "key",
                                            "status"
                                          ],
                                          "x-oapi-codegen-extra-tags": {
                                            "gorm": "type:bytes;serializer:json"
                                          },
                                          "properties": {
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the capability definition conforms.",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "version": {
                                              "description": "Version of the capability definition.",
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            },
                                            "displayName": {
                                              "description": "Name of the capability in human-readible format.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "description": {
                                              "type": "string",
                                              "description": "A written representation of the purpose and characteristics of the capability.",
                                              "maxLength": 5000
                                            },
                                            "kind": {
                                              "description": "Top-level categorization of the capability",
                                              "additionalProperties": false,
                                              "anyOf": [
                                                {
                                                  "const": "action",
                                                  "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                },
                                                {
                                                  "const": "mutate",
                                                  "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                },
                                                {
                                                  "const": "view",
                                                  "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                },
                                                {
                                                  "const": "interaction",
                                                  "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                }
                                              ],
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "type": {
                                              "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "subType": {
                                              "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "key": {
                                              "description": "Key that backs the capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "entityState": {
                                              "description": "State of the entity in which the capability is applicable.",
                                              "type": "array",
                                              "items": {
                                                "type": "string",
                                                "enum": [
                                                  "declaration",
                                                  "instance"
                                                ],
                                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                              }
                                            },
                                            "status": {
                                              "type": "string",
                                              "description": "Status of the capability",
                                              "default": "enabled",
                                              "enum": [
                                                "enabled",
                                                "disabled"
                                              ]
                                            },
                                            "metadata": {
                                              "type": "object",
                                              "description": "Metadata contains additional information associated with the capability. Extension point.",
                                              "additionalProperties": true
                                            }
                                          },
                                          "default": [
                                            {
                                              "description": "Configure the visual styles for the component",
                                              "displayName": "Styling",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Change the shape of the component",
                                              "displayName": "Change Shape",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "shape",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Drag and Drop a component into a parent component in graph view",
                                              "displayName": "Compound Drag And Drop",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "interaction",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "compoundDnd",
                                              "type": "graph",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Add text to nodes body",
                                              "displayName": "Body Text",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "body-text",
                                              "type": "style",
                                              "version": "0.7.0"
                                            }
                                          ]
                                        },
                                        "x-order": 1
                                      },
                                      "isAnnotation": {
                                        "type": "boolean",
                                        "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "isAnnotation"
                                        },
                                        "x-order": 2,
                                        "default": false
                                      },
                                      "primaryColor": {
                                        "type": "string",
                                        "description": "Primary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00b39f",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "primaryColor"
                                        },
                                        "x-order": 3
                                      },
                                      "secondaryColor": {
                                        "type": "string",
                                        "description": "Secondary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00D3A9",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "secondaryColor"
                                        },
                                        "x-order": 4
                                      },
                                      "svgWhite": {
                                        "type": "string",
                                        "description": "SVG representation of the model in white color.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgWhite"
                                        },
                                        "x-order": 5,
                                        "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>"
                                      },
                                      "svgColor": {
                                        "type": "string",
                                        "description": "SVG representation of the model in colored format.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgColor"
                                        },
                                        "x-order": 6,
                                        "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>"
                                      },
                                      "svgComplete": {
                                        "type": "string",
                                        "description": "SVG representation of the complete model.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgComplete"
                                        },
                                        "x-order": 7
                                      },
                                      "shape": {
                                        "description": "Visual shape used to render the model's entities in design canvases.",
                                        "x-order": 8,
                                        "type": "string",
                                        "enum": [
                                          "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"
                                        ]
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "json": "metadata"
                                    },
                                    "x-order": 11,
                                    "additionalProperties": true
                                  },
                                  "model": {
                                    "description": "Registrant-defined data associated with the model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-order": 12,
                                    "type": "object",
                                    "required": [
                                      "version"
                                    ],
                                    "properties": {
                                      "version": {
                                        "description": "Version of the model as defined by the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "version"
                                        },
                                        "x-order": 1,
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      }
                                    }
                                  },
                                  "relationships": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationships"
                                    },
                                    "description": "The relationships of the model."
                                  },
                                  "components": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "components"
                                    },
                                    "description": "The components of the model."
                                  },
                                  "componentsCount": {
                                    "type": "integer",
                                    "description": "Number of components associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "componentsCount",
                                      "gorm": "-"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "relationshipsCount": {
                                    "type": "integer",
                                    "description": "Number of relationships associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationshipsCount"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the model was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "created_at",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the model was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updated_at",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "schemaVersion",
                                  "displayName",
                                  "status",
                                  "subCategory",
                                  "model",
                                  "name",
                                  "description",
                                  "version",
                                  "registrant",
                                  "category",
                                  "categoryId",
                                  "registrantId",
                                  "relationshipsCount",
                                  "componentsCount",
                                  "components",
                                  "relationships"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this model's name and version.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The models matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      },
      "delete": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "deleteRegistryModel",
        "summary": "Delete a registered model",
        "description": "Deletes a model from the registry. The path parameter is the model's ID (UUID), not its name.",
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Model deleted."
          },
          "401": {
            "description": "Expired JWT token used or insufficient privilege",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}/components": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByModel",
        "summary": "List components of a model",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of components belonging to the model.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}/components/{name}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByModelAndName",
        "summary": "Get components of a model by component name",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "name",
            "in": "path",
            "description": "Kind of the component (e.g. `Deployment`).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching components.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}/relationships": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryRelationshipsByModel",
        "summary": "List relationships of a model",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of relationships belonging to the model.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered relationships.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "relationships": {
                          "type": "array",
                          "items": {
                            "openapi": "3.0.0",
                            "info": {
                              "title": "Relationship Core Schema",
                              "description": "Core schema definitions for Relationship and Selector in Meshery.",
                              "version": "v1alpha3",
                              "contact": {
                                "name": "Meshery Maintainers",
                                "email": "maintainers@meshery.io",
                                "url": "https://meshery.io"
                              },
                              "license": {
                                "name": "Apache 2.0",
                                "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
                              }
                            },
                            "paths": {},
                            "components": {
                              "schemas": {
                                "MutatorRef": {
                                  "type": "array",
                                  "description": "JSON ref to value from where patch should be applied.",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                  }
                                },
                                "MutatedRef": {
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                  }
                                },
                                "RelationshipDefinitionSelectorsPatchStrategy": {
                                  "type": "string",
                                  "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                  "enum": [
                                    "merge",
                                    "strategic",
                                    "add",
                                    "remove",
                                    "copy",
                                    "move",
                                    "test"
                                  ]
                                },
                                "RelationshipDefinition_Selectors_Patch": {
                                  "type": "object",
                                  "description": "Patch configuration for the selector",
                                  "properties": {
                                    "patchStrategy": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patchStrategy,omitempty",
                                        "json": "patchStrategy,omitempty"
                                      },
                                      "type": "string",
                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                      "enum": [
                                        "merge",
                                        "strategic",
                                        "add",
                                        "remove",
                                        "copy",
                                        "move",
                                        "test"
                                      ]
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "MatchSelectorItem": {
                                  "type": "object",
                                  "description": "Match selector item for binding between nodes",
                                  "required": [
                                    "kind"
                                  ],
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "MatchSelector": {
                                  "type": "object",
                                  "description": "Match configuration for selector",
                                  "properties": {
                                    "refs": {
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "refs,omitempty",
                                        "json": "refs,omitempty"
                                      }
                                    },
                                    "from": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from,omitempty",
                                        "json": "from,omitempty"
                                      }
                                    },
                                    "to": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to,omitempty",
                                        "json": "to,omitempty"
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match,omitempty",
                                    "json": "match,omitempty"
                                  }
                                },
                                "SelectorItem": {
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "Selector": {
                                  "type": "object",
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "required": [
                                    "from",
                                    "to"
                                  ],
                                  "properties": {
                                    "from": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from",
                                        "json": "from"
                                      }
                                    },
                                    "to": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to",
                                        "json": "to"
                                      }
                                    }
                                  }
                                },
                                "SelectorSetItem": {
                                  "type": "object",
                                  "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                  "required": [
                                    "allow"
                                  ],
                                  "properties": {
                                    "allow": {
                                      "description": "Selectors used to define relationships which are allowed.",
                                      "x-go-type": "Selector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "allow",
                                        "json": "allow"
                                      },
                                      "type": "object",
                                      "required": [
                                        "from",
                                        "to"
                                      ],
                                      "properties": {
                                        "from": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from",
                                            "json": "from"
                                          }
                                        },
                                        "to": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to",
                                            "json": "to"
                                          }
                                        }
                                      }
                                    },
                                    "deny": {
                                      "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                      "x-go-type": "Selector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "deny,omitempty",
                                        "json": "deny,omitempty"
                                      },
                                      "type": "object",
                                      "required": [
                                        "from",
                                        "to"
                                      ],
                                      "properties": {
                                        "from": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from",
                                            "json": "from"
                                          }
                                        },
                                        "to": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to",
                                            "json": "to"
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "SelectorSet": {
                                  "type": "array",
                                  "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "items": {
                                    "x-go-type": "SelectorSetItem",
                                    "type": "object",
                                    "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                    "required": [
                                      "allow"
                                    ],
                                    "properties": {
                                      "allow": {
                                        "description": "Selectors used to define relationships which are allowed.",
                                        "x-go-type": "Selector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "allow",
                                          "json": "allow"
                                        },
                                        "type": "object",
                                        "required": [
                                          "from",
                                          "to"
                                        ],
                                        "properties": {
                                          "from": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from",
                                              "json": "from"
                                            }
                                          },
                                          "to": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to",
                                              "json": "to"
                                            }
                                          }
                                        }
                                      },
                                      "deny": {
                                        "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                        "x-go-type": "Selector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "deny,omitempty",
                                          "json": "deny,omitempty"
                                        },
                                        "type": "object",
                                        "required": [
                                          "from",
                                          "to"
                                        ],
                                        "properties": {
                                          "from": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from",
                                              "json": "from"
                                            }
                                          },
                                          "to": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to",
                                              "json": "to"
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "RelationshipDefinitionMetadataStylesTextTransform": {
                                  "type": "string",
                                  "description": "A transformation to apply to the label text",
                                  "enum": [
                                    "none",
                                    "uppercase",
                                    "lowercase"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesLineStyle": {
                                  "type": "string",
                                  "description": "The style of the edge's line.",
                                  "enum": [
                                    "solid",
                                    "dotted",
                                    "dashed"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesCurveStyle": {
                                  "type": "string",
                                  "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                  "enum": [
                                    "haystack",
                                    "straight",
                                    "bezier",
                                    "unbundled-bezier",
                                    "segments",
                                    "taxi"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesLineCap": {
                                  "type": "string",
                                  "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                  "enum": [
                                    "butt",
                                    "round",
                                    "square"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesMidTargetArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's source arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesMidTargetArrowFill": {
                                  "type": "string",
                                  "description": "The fill state of the edge's source arrow",
                                  "enum": [
                                    "filled",
                                    "hollow"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesTargetArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's source arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesTargetArrowFill": {
                                  "type": "string",
                                  "description": "The fill state of the edge's source arrow",
                                  "enum": [
                                    "filled",
                                    "hollow"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStyles": {
                                  "type": "object",
                                  "description": "Visualization styles for a relationship",
                                  "required": [
                                    "primaryColor",
                                    "svgColor",
                                    "svgWhite"
                                  ],
                                  "properties": {
                                    "primaryColor": {
                                      "type": "string",
                                      "description": "Primary color of the component used for UI representation.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "primaryColor",
                                        "json": "primaryColor"
                                      }
                                    },
                                    "secondaryColor": {
                                      "type": "string",
                                      "description": "Secondary color of the entity used for UI representation.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "secondaryColor,omitempty",
                                        "json": "secondaryColor,omitempty"
                                      }
                                    },
                                    "svgWhite": {
                                      "type": "string",
                                      "description": "White SVG of the entity used for UI representation on dark background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgWhite",
                                        "json": "svgWhite"
                                      }
                                    },
                                    "svgColor": {
                                      "type": "string",
                                      "description": "Colored SVG of the entity used for UI representation on light background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgColor",
                                        "json": "svgColor"
                                      }
                                    },
                                    "svgComplete": {
                                      "type": "string",
                                      "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgComplete,omitempty",
                                        "json": "svgComplete,omitempty"
                                      }
                                    },
                                    "color": {
                                      "type": "string",
                                      "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "color,omitempty",
                                        "json": "color,omitempty"
                                      }
                                    },
                                    "text-opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "The opacity of the label text, including its outline.",
                                      "x-go-name": "TextOpacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "text-opacity,omitempty",
                                        "json": "text-opacity,omitempty"
                                      }
                                    },
                                    "font-family": {
                                      "type": "string",
                                      "description": "A comma-separated list of font names to use on the label text.",
                                      "x-go-name": "FontFamily",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-family,omitempty",
                                        "json": "font-family,omitempty"
                                      }
                                    },
                                    "font-size": {
                                      "type": "string",
                                      "description": "The size of the label text.",
                                      "x-go-name": "FontSize",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-size,omitempty",
                                        "json": "font-size,omitempty"
                                      }
                                    },
                                    "font-style": {
                                      "type": "string",
                                      "description": "A CSS font style to be applied to the label text.",
                                      "x-go-name": "FontStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-style,omitempty",
                                        "json": "font-style,omitempty"
                                      }
                                    },
                                    "font-weight": {
                                      "type": "string",
                                      "description": "A CSS font weight to be applied to the label text.",
                                      "x-go-name": "FontWeight",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-weight,omitempty",
                                        "json": "font-weight,omitempty"
                                      }
                                    },
                                    "text-transform": {
                                      "description": "A transformation to apply to the label text",
                                      "x-go-name": "TextTransform",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "text-transform,omitempty",
                                        "json": "text-transform,omitempty"
                                      },
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "uppercase",
                                        "lowercase"
                                      ]
                                    },
                                    "opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "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.See https://js.cytoscape.org/#style/visibility",
                                      "x-go-name": "Opacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "opacity,omitempty",
                                        "json": "opacity,omitempty"
                                      }
                                    },
                                    "z-index": {
                                      "type": "integer",
                                      "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.",
                                      "x-go-name": "ZIndex",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "z-index,omitempty",
                                        "json": "z-index,omitempty"
                                      }
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "Label",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "label,omitempty",
                                        "json": "label,omitempty"
                                      }
                                    },
                                    "edge-animation": {
                                      "type": "string",
                                      "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                      "x-go-name": "EdgeAnimation",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "edge-animation,omitempty",
                                        "json": "edge-animation,omitempty"
                                      }
                                    },
                                    "curve-style": {
                                      "x-go-name": "CurveStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "curve-style,omitempty",
                                        "json": "curve-style,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                      "enum": [
                                        "haystack",
                                        "straight",
                                        "bezier",
                                        "unbundled-bezier",
                                        "segments",
                                        "taxi"
                                      ]
                                    },
                                    "line-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "LineColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-color,omitempty",
                                        "json": "line-color,omitempty"
                                      }
                                    },
                                    "line-style": {
                                      "x-go-name": "LineStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-style,omitempty",
                                        "json": "line-style,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The style of the edge's line.",
                                      "enum": [
                                        "solid",
                                        "dotted",
                                        "dashed"
                                      ]
                                    },
                                    "line-cap": {
                                      "x-go-name": "LineCap",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-cap,omitempty",
                                        "json": "line-cap,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                      "enum": [
                                        "butt",
                                        "round",
                                        "square"
                                      ]
                                    },
                                    "line-opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                      "x-go-name": "LineOpacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-opacity,omitempty",
                                        "json": "line-opacity,omitempty"
                                      }
                                    },
                                    "target-arrow-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "TargetArrowColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-color,omitempty",
                                        "json": "target-arrow-color,omitempty"
                                      }
                                    },
                                    "target-arrow-shape": {
                                      "x-go-name": "TargetArrowShape",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-shape,omitempty",
                                        "json": "target-arrow-shape,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The shape of the edge's source arrow",
                                      "enum": [
                                        "triangle",
                                        "triangle-tee",
                                        "circle-triangle",
                                        "triangle-cross",
                                        "triangle-backcurve",
                                        "vee",
                                        "tee",
                                        "square",
                                        "circle",
                                        "diamond",
                                        "chevron",
                                        "none"
                                      ]
                                    },
                                    "target-arrow-fill": {
                                      "x-go-name": "TargetArrowFill",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-fill,omitempty",
                                        "json": "target-arrow-fill,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The fill state of the edge's source arrow",
                                      "enum": [
                                        "filled",
                                        "hollow"
                                      ]
                                    },
                                    "mid-target-arrow-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "MidTargetArrowColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-color,omitempty",
                                        "json": "mid-target-arrow-color,omitempty"
                                      }
                                    },
                                    "mid-target-arrow-shape": {
                                      "x-go-name": "MidTargetArrowShape",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-shape,omitempty",
                                        "json": "mid-target-arrow-shape,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The shape of the edge's source arrow",
                                      "enum": [
                                        "triangle",
                                        "triangle-tee",
                                        "circle-triangle",
                                        "triangle-cross",
                                        "triangle-backcurve",
                                        "vee",
                                        "tee",
                                        "square",
                                        "circle",
                                        "diamond",
                                        "chevron",
                                        "none"
                                      ]
                                    },
                                    "mid-target-arrow-fill": {
                                      "x-go-name": "MidTargetArrowFill",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-fill,omitempty",
                                        "json": "mid-target-arrow-fill,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The fill state of the edge's source arrow",
                                      "enum": [
                                        "filled",
                                        "hollow"
                                      ]
                                    },
                                    "arrow-scale": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "Scaling for the arrow size.",
                                      "x-go-name": "ArrowScale",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "arrow-scale,omitempty",
                                        "json": "arrow-scale,omitempty"
                                      }
                                    },
                                    "source-label": {
                                      "type": "string",
                                      "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "SourceLabel",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "source-label,omitempty",
                                        "json": "source-label,omitempty"
                                      }
                                    },
                                    "target-label": {
                                      "type": "string",
                                      "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "TargetLabel",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-label,omitempty",
                                        "json": "target-label,omitempty"
                                      }
                                    }
                                  }
                                },
                                "Relationship_Metadata": {
                                  "type": "object",
                                  "description": "Metadata contains additional information associated with the Relationship.",
                                  "additionalProperties": true,
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "properties": {
                                    "description": {
                                      "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "description",
                                        "json": "description"
                                      }
                                    },
                                    "styles": {
                                      "x-go-type": "RelationshipDefinitionMetadataStyles",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "styles",
                                        "json": "styles"
                                      },
                                      "type": "object",
                                      "description": "Visualization styles for a relationship",
                                      "required": [
                                        "primaryColor",
                                        "svgColor",
                                        "svgWhite"
                                      ],
                                      "properties": {
                                        "primaryColor": {
                                          "type": "string",
                                          "description": "Primary color of the component used for UI representation.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "primaryColor",
                                            "json": "primaryColor"
                                          }
                                        },
                                        "secondaryColor": {
                                          "type": "string",
                                          "description": "Secondary color of the entity used for UI representation.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "secondaryColor,omitempty",
                                            "json": "secondaryColor,omitempty"
                                          }
                                        },
                                        "svgWhite": {
                                          "type": "string",
                                          "description": "White SVG of the entity used for UI representation on dark background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgWhite",
                                            "json": "svgWhite"
                                          }
                                        },
                                        "svgColor": {
                                          "type": "string",
                                          "description": "Colored SVG of the entity used for UI representation on light background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgColor",
                                            "json": "svgColor"
                                          }
                                        },
                                        "svgComplete": {
                                          "type": "string",
                                          "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgComplete,omitempty",
                                            "json": "svgComplete,omitempty"
                                          }
                                        },
                                        "color": {
                                          "type": "string",
                                          "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "color,omitempty",
                                            "json": "color,omitempty"
                                          }
                                        },
                                        "text-opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "The opacity of the label text, including its outline.",
                                          "x-go-name": "TextOpacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "text-opacity,omitempty",
                                            "json": "text-opacity,omitempty"
                                          }
                                        },
                                        "font-family": {
                                          "type": "string",
                                          "description": "A comma-separated list of font names to use on the label text.",
                                          "x-go-name": "FontFamily",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-family,omitempty",
                                            "json": "font-family,omitempty"
                                          }
                                        },
                                        "font-size": {
                                          "type": "string",
                                          "description": "The size of the label text.",
                                          "x-go-name": "FontSize",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-size,omitempty",
                                            "json": "font-size,omitempty"
                                          }
                                        },
                                        "font-style": {
                                          "type": "string",
                                          "description": "A CSS font style to be applied to the label text.",
                                          "x-go-name": "FontStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-style,omitempty",
                                            "json": "font-style,omitempty"
                                          }
                                        },
                                        "font-weight": {
                                          "type": "string",
                                          "description": "A CSS font weight to be applied to the label text.",
                                          "x-go-name": "FontWeight",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-weight,omitempty",
                                            "json": "font-weight,omitempty"
                                          }
                                        },
                                        "text-transform": {
                                          "description": "A transformation to apply to the label text",
                                          "x-go-name": "TextTransform",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "text-transform,omitempty",
                                            "json": "text-transform,omitempty"
                                          },
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "uppercase",
                                            "lowercase"
                                          ]
                                        },
                                        "opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "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.See https://js.cytoscape.org/#style/visibility",
                                          "x-go-name": "Opacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "opacity,omitempty",
                                            "json": "opacity,omitempty"
                                          }
                                        },
                                        "z-index": {
                                          "type": "integer",
                                          "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.",
                                          "x-go-name": "ZIndex",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "z-index,omitempty",
                                            "json": "z-index,omitempty"
                                          }
                                        },
                                        "label": {
                                          "type": "string",
                                          "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "Label",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "label,omitempty",
                                            "json": "label,omitempty"
                                          }
                                        },
                                        "edge-animation": {
                                          "type": "string",
                                          "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                          "x-go-name": "EdgeAnimation",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "edge-animation,omitempty",
                                            "json": "edge-animation,omitempty"
                                          }
                                        },
                                        "curve-style": {
                                          "x-go-name": "CurveStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "curve-style,omitempty",
                                            "json": "curve-style,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                          "enum": [
                                            "haystack",
                                            "straight",
                                            "bezier",
                                            "unbundled-bezier",
                                            "segments",
                                            "taxi"
                                          ]
                                        },
                                        "line-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "LineColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-color,omitempty",
                                            "json": "line-color,omitempty"
                                          }
                                        },
                                        "line-style": {
                                          "x-go-name": "LineStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-style,omitempty",
                                            "json": "line-style,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The style of the edge's line.",
                                          "enum": [
                                            "solid",
                                            "dotted",
                                            "dashed"
                                          ]
                                        },
                                        "line-cap": {
                                          "x-go-name": "LineCap",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-cap,omitempty",
                                            "json": "line-cap,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                          "enum": [
                                            "butt",
                                            "round",
                                            "square"
                                          ]
                                        },
                                        "line-opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                          "x-go-name": "LineOpacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-opacity,omitempty",
                                            "json": "line-opacity,omitempty"
                                          }
                                        },
                                        "target-arrow-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "TargetArrowColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-color,omitempty",
                                            "json": "target-arrow-color,omitempty"
                                          }
                                        },
                                        "target-arrow-shape": {
                                          "x-go-name": "TargetArrowShape",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-shape,omitempty",
                                            "json": "target-arrow-shape,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The shape of the edge's source arrow",
                                          "enum": [
                                            "triangle",
                                            "triangle-tee",
                                            "circle-triangle",
                                            "triangle-cross",
                                            "triangle-backcurve",
                                            "vee",
                                            "tee",
                                            "square",
                                            "circle",
                                            "diamond",
                                            "chevron",
                                            "none"
                                          ]
                                        },
                                        "target-arrow-fill": {
                                          "x-go-name": "TargetArrowFill",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-fill,omitempty",
                                            "json": "target-arrow-fill,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The fill state of the edge's source arrow",
                                          "enum": [
                                            "filled",
                                            "hollow"
                                          ]
                                        },
                                        "mid-target-arrow-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "MidTargetArrowColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-color,omitempty",
                                            "json": "mid-target-arrow-color,omitempty"
                                          }
                                        },
                                        "mid-target-arrow-shape": {
                                          "x-go-name": "MidTargetArrowShape",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-shape,omitempty",
                                            "json": "mid-target-arrow-shape,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The shape of the edge's source arrow",
                                          "enum": [
                                            "triangle",
                                            "triangle-tee",
                                            "circle-triangle",
                                            "triangle-cross",
                                            "triangle-backcurve",
                                            "vee",
                                            "tee",
                                            "square",
                                            "circle",
                                            "diamond",
                                            "chevron",
                                            "none"
                                          ]
                                        },
                                        "mid-target-arrow-fill": {
                                          "x-go-name": "MidTargetArrowFill",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-fill,omitempty",
                                            "json": "mid-target-arrow-fill,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The fill state of the edge's source arrow",
                                          "enum": [
                                            "filled",
                                            "hollow"
                                          ]
                                        },
                                        "arrow-scale": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "Scaling for the arrow size.",
                                          "x-go-name": "ArrowScale",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "arrow-scale,omitempty",
                                            "json": "arrow-scale,omitempty"
                                          }
                                        },
                                        "source-label": {
                                          "type": "string",
                                          "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "SourceLabel",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "source-label,omitempty",
                                            "json": "source-label,omitempty"
                                          }
                                        },
                                        "target-label": {
                                          "type": "string",
                                          "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "TargetLabel",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-label,omitempty",
                                            "json": "target-label,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "isAnnotation": {
                                      "type": "boolean",
                                      "description": "Indicates whether the relationship should be treated as a logical representation only",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "isAnnotation",
                                        "json": "isAnnotation"
                                      }
                                    }
                                  }
                                },
                                "RelationshipDefinition": {
                                  "description": "Relationships define the nature of interaction between interconnected components in Meshery. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs.meshery.io/concepts/logical/relationships.",
                                  "type": "object",
                                  "required": [
                                    "schemaVersion",
                                    "version",
                                    "model",
                                    "kind",
                                    "type",
                                    "subType",
                                    "id"
                                  ],
                                  "properties": {
                                    "id": {
                                      "description": "Uniquely identifies the entity",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 1,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "schemaVersion": {
                                      "description": "Specifies the version of the schema used for the relationship definition.",
                                      "x-order": 8,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "schemaVersion",
                                        "json": "schemaVersion"
                                      },
                                      "type": "string",
                                      "minLength": 2,
                                      "maxLength": 100,
                                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                      "example": [
                                        "v1",
                                        "v1alpha1",
                                        "v2beta3",
                                        "v1.custom-suffix",
                                        "models.meshery.io/v1beta1",
                                        "capability.meshery.io/v1alpha1"
                                      ]
                                    },
                                    "version": {
                                      "description": "Specifies the version of the relationship definition.",
                                      "x-order": 13,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "version",
                                        "json": "version"
                                      },
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    },
                                    "kind": {
                                      "description": "Kind of the Relationship. Learn more about relationships - https://docs.meshery.io/concepts/logical/relationships.",
                                      "type": "string",
                                      "enum": [
                                        "hierarchical",
                                        "edge",
                                        "sibling"
                                      ],
                                      "x-order": 4,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "type": {
                                      "description": "Classification of relationships. Used to group relationships similar in nature.",
                                      "type": "string",
                                      "x-go-name": "RelationshipType",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 12,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "type",
                                        "json": "type",
                                        "gorm": "column:type"
                                      }
                                    },
                                    "subType": {
                                      "description": "Most granular unit of relationship classification. The combination of Kind, Type and SubType together uniquely identify a Relationship.",
                                      "type": "string",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 10,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "subType",
                                        "json": "subType"
                                      }
                                    },
                                    "status": {
                                      "type": "string",
                                      "description": "Status of the relationship.",
                                      "enum": [
                                        "enabled",
                                        "ignored",
                                        "deleted",
                                        "approved",
                                        "pending"
                                      ],
                                      "x-order": 11,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "status",
                                        "json": "status"
                                      }
                                    },
                                    "capabilities": {
                                      "type": "array",
                                      "description": "Capabilities associated with the relationship.",
                                      "x-order": 2,
                                      "items": {
                                        "x-go-type": "capabilityv1alpha1.Capability",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                          "name": "capabilityv1alpha1"
                                        },
                                        "$id": "https://schemas.meshery.io/capability.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "description",
                                          "schemaVersion",
                                          "version",
                                          "displayName",
                                          "kind",
                                          "type",
                                          "subType",
                                          "entityState",
                                          "key",
                                          "status"
                                        ],
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "properties": {
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema to which the capability definition conforms.",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the capability definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "description": "Name of the capability in human-readible format.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "description": {
                                            "type": "string",
                                            "description": "A written representation of the purpose and characteristics of the capability."
                                          },
                                          "kind": {
                                            "description": "Top-level categorization of the capability",
                                            "additionalProperties": false,
                                            "anyOf": [
                                              {
                                                "const": "action",
                                                "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                              },
                                              {
                                                "const": "mutate",
                                                "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                              },
                                              {
                                                "const": "view",
                                                "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                              },
                                              {
                                                "const": "interaction",
                                                "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                              }
                                            ],
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "type": {
                                            "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "subType": {
                                            "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "key": {
                                            "description": "Key that backs the capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "entityState": {
                                            "description": "State of the entity in which the capability is applicable.",
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "enum": [
                                                "declaration",
                                                "instance"
                                              ],
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                              "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                            }
                                          },
                                          "status": {
                                            "type": "string",
                                            "description": "Status of the capability",
                                            "default": "enabled",
                                            "enum": [
                                              "enabled",
                                              "disabled"
                                            ]
                                          },
                                          "metadata": {
                                            "type": "object",
                                            "description": "Metadata contains additional information associated with the capability. Extension point.",
                                            "additionalProperties": true
                                          }
                                        },
                                        "default": [
                                          {
                                            "description": "Configure the visual styles for the component",
                                            "displayName": "Styling",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Change the shape of the component",
                                            "displayName": "Change Shape",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "shape",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Drag and Drop a component into a parent component in graph view",
                                            "displayName": "Compound Drag And Drop",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "interaction",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "compoundDnd",
                                            "type": "graph",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Add text to nodes body",
                                            "displayName": "Body Text",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "body-text",
                                            "type": "style",
                                            "version": "0.7.0"
                                          }
                                        ]
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "capabilities",
                                        "json": "capabilities,omitempty",
                                        "gorm": "type:bytes;serializer:json"
                                      }
                                    },
                                    "metadata": {
                                      "x-go-type": "Relationship_Metadata",
                                      "x-order": 5,
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json",
                                        "yaml": "metadata",
                                        "json": "metadata,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Metadata contains additional information associated with the Relationship.",
                                      "additionalProperties": true,
                                      "properties": {
                                        "description": {
                                          "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                          "type": "string",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "description",
                                            "json": "description"
                                          }
                                        },
                                        "styles": {
                                          "x-go-type": "RelationshipDefinitionMetadataStyles",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "styles",
                                            "json": "styles"
                                          },
                                          "type": "object",
                                          "description": "Visualization styles for a relationship",
                                          "required": [
                                            "primaryColor",
                                            "svgColor",
                                            "svgWhite"
                                          ],
                                          "properties": {
                                            "primaryColor": {
                                              "type": "string",
                                              "description": "Primary color of the component used for UI representation.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "primaryColor",
                                                "json": "primaryColor"
                                              }
                                            },
                                            "secondaryColor": {
                                              "type": "string",
                                              "description": "Secondary color of the entity used for UI representation.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "secondaryColor,omitempty",
                                                "json": "secondaryColor,omitempty"
                                              }
                                            },
                                            "svgWhite": {
                                              "type": "string",
                                              "description": "White SVG of the entity used for UI representation on dark background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgWhite",
                                                "json": "svgWhite"
                                              }
                                            },
                                            "svgColor": {
                                              "type": "string",
                                              "description": "Colored SVG of the entity used for UI representation on light background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgColor",
                                                "json": "svgColor"
                                              }
                                            },
                                            "svgComplete": {
                                              "type": "string",
                                              "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgComplete,omitempty",
                                                "json": "svgComplete,omitempty"
                                              }
                                            },
                                            "color": {
                                              "type": "string",
                                              "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "color,omitempty",
                                                "json": "color,omitempty"
                                              }
                                            },
                                            "text-opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "The opacity of the label text, including its outline.",
                                              "x-go-name": "TextOpacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "text-opacity,omitempty",
                                                "json": "text-opacity,omitempty"
                                              }
                                            },
                                            "font-family": {
                                              "type": "string",
                                              "description": "A comma-separated list of font names to use on the label text.",
                                              "x-go-name": "FontFamily",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-family,omitempty",
                                                "json": "font-family,omitempty"
                                              }
                                            },
                                            "font-size": {
                                              "type": "string",
                                              "description": "The size of the label text.",
                                              "x-go-name": "FontSize",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-size,omitempty",
                                                "json": "font-size,omitempty"
                                              }
                                            },
                                            "font-style": {
                                              "type": "string",
                                              "description": "A CSS font style to be applied to the label text.",
                                              "x-go-name": "FontStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-style,omitempty",
                                                "json": "font-style,omitempty"
                                              }
                                            },
                                            "font-weight": {
                                              "type": "string",
                                              "description": "A CSS font weight to be applied to the label text.",
                                              "x-go-name": "FontWeight",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-weight,omitempty",
                                                "json": "font-weight,omitempty"
                                              }
                                            },
                                            "text-transform": {
                                              "description": "A transformation to apply to the label text",
                                              "x-go-name": "TextTransform",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "text-transform,omitempty",
                                                "json": "text-transform,omitempty"
                                              },
                                              "type": "string",
                                              "enum": [
                                                "none",
                                                "uppercase",
                                                "lowercase"
                                              ]
                                            },
                                            "opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "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.See https://js.cytoscape.org/#style/visibility",
                                              "x-go-name": "Opacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "opacity,omitempty",
                                                "json": "opacity,omitempty"
                                              }
                                            },
                                            "z-index": {
                                              "type": "integer",
                                              "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.",
                                              "x-go-name": "ZIndex",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "z-index,omitempty",
                                                "json": "z-index,omitempty"
                                              }
                                            },
                                            "label": {
                                              "type": "string",
                                              "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "Label",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "label,omitempty",
                                                "json": "label,omitempty"
                                              }
                                            },
                                            "edge-animation": {
                                              "type": "string",
                                              "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                              "x-go-name": "EdgeAnimation",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "edge-animation,omitempty",
                                                "json": "edge-animation,omitempty"
                                              }
                                            },
                                            "curve-style": {
                                              "x-go-name": "CurveStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "curve-style,omitempty",
                                                "json": "curve-style,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                              "enum": [
                                                "haystack",
                                                "straight",
                                                "bezier",
                                                "unbundled-bezier",
                                                "segments",
                                                "taxi"
                                              ]
                                            },
                                            "line-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "LineColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-color,omitempty",
                                                "json": "line-color,omitempty"
                                              }
                                            },
                                            "line-style": {
                                              "x-go-name": "LineStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-style,omitempty",
                                                "json": "line-style,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The style of the edge's line.",
                                              "enum": [
                                                "solid",
                                                "dotted",
                                                "dashed"
                                              ]
                                            },
                                            "line-cap": {
                                              "x-go-name": "LineCap",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-cap,omitempty",
                                                "json": "line-cap,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                              "enum": [
                                                "butt",
                                                "round",
                                                "square"
                                              ]
                                            },
                                            "line-opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                              "x-go-name": "LineOpacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-opacity,omitempty",
                                                "json": "line-opacity,omitempty"
                                              }
                                            },
                                            "target-arrow-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "TargetArrowColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-color,omitempty",
                                                "json": "target-arrow-color,omitempty"
                                              }
                                            },
                                            "target-arrow-shape": {
                                              "x-go-name": "TargetArrowShape",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-shape,omitempty",
                                                "json": "target-arrow-shape,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The shape of the edge's source arrow",
                                              "enum": [
                                                "triangle",
                                                "triangle-tee",
                                                "circle-triangle",
                                                "triangle-cross",
                                                "triangle-backcurve",
                                                "vee",
                                                "tee",
                                                "square",
                                                "circle",
                                                "diamond",
                                                "chevron",
                                                "none"
                                              ]
                                            },
                                            "target-arrow-fill": {
                                              "x-go-name": "TargetArrowFill",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-fill,omitempty",
                                                "json": "target-arrow-fill,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The fill state of the edge's source arrow",
                                              "enum": [
                                                "filled",
                                                "hollow"
                                              ]
                                            },
                                            "mid-target-arrow-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "MidTargetArrowColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-color,omitempty",
                                                "json": "mid-target-arrow-color,omitempty"
                                              }
                                            },
                                            "mid-target-arrow-shape": {
                                              "x-go-name": "MidTargetArrowShape",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-shape,omitempty",
                                                "json": "mid-target-arrow-shape,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The shape of the edge's source arrow",
                                              "enum": [
                                                "triangle",
                                                "triangle-tee",
                                                "circle-triangle",
                                                "triangle-cross",
                                                "triangle-backcurve",
                                                "vee",
                                                "tee",
                                                "square",
                                                "circle",
                                                "diamond",
                                                "chevron",
                                                "none"
                                              ]
                                            },
                                            "mid-target-arrow-fill": {
                                              "x-go-name": "MidTargetArrowFill",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-fill,omitempty",
                                                "json": "mid-target-arrow-fill,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The fill state of the edge's source arrow",
                                              "enum": [
                                                "filled",
                                                "hollow"
                                              ]
                                            },
                                            "arrow-scale": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "Scaling for the arrow size.",
                                              "x-go-name": "ArrowScale",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "arrow-scale,omitempty",
                                                "json": "arrow-scale,omitempty"
                                              }
                                            },
                                            "source-label": {
                                              "type": "string",
                                              "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "SourceLabel",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "source-label,omitempty",
                                                "json": "source-label,omitempty"
                                              }
                                            },
                                            "target-label": {
                                              "type": "string",
                                              "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "TargetLabel",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-label,omitempty",
                                                "json": "target-label,omitempty"
                                              }
                                            }
                                          }
                                        },
                                        "isAnnotation": {
                                          "type": "boolean",
                                          "description": "Indicates whether the relationship should be treated as a logical representation only",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "isAnnotation",
                                            "json": "isAnnotation"
                                          }
                                        }
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 6,
                                      "description": "Model 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",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model",
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "modelId": {
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-go-name": "ModelId",
                                      "x-order": 7,
                                      "description": "Foreign key reference to the model",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "-",
                                        "gorm": "index:idx_relationship_definition_dbs_model_id,column:model_id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "evaluationQuery": {
                                      "description": "Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs.",
                                      "type": "string",
                                      "x-order": 3,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "evaluationQuery",
                                        "json": "evaluationQuery"
                                      }
                                    },
                                    "selectors": {
                                      "x-go-type": "SelectorSet",
                                      "x-order": 9,
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json",
                                        "yaml": "selectors,omitempty",
                                        "json": "selectors,omitempty"
                                      },
                                      "type": "array",
                                      "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                                      "items": {
                                        "x-go-type": "SelectorSetItem",
                                        "type": "object",
                                        "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                        "required": [
                                          "allow"
                                        ],
                                        "properties": {
                                          "allow": {
                                            "description": "Selectors used to define relationships which are allowed.",
                                            "x-go-type": "Selector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "allow",
                                              "json": "allow"
                                            },
                                            "type": "object",
                                            "required": [
                                              "from",
                                              "to"
                                            ],
                                            "properties": {
                                              "from": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from",
                                                  "json": "from"
                                                }
                                              },
                                              "to": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to",
                                                  "json": "to"
                                                }
                                              }
                                            }
                                          },
                                          "deny": {
                                            "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                            "x-go-type": "Selector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "deny,omitempty",
                                              "json": "deny,omitempty"
                                            },
                                            "type": "object",
                                            "required": [
                                              "from",
                                              "to"
                                            ],
                                            "properties": {
                                              "from": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from",
                                                  "json": "from"
                                                }
                                              },
                                              "to": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to",
                                                  "json": "to"
                                                }
                                              }
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          },
                          "description": "The relationships matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}/relationships/{name}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryRelationshipsByModelAndName",
        "summary": "Get relationships of a model by kind",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "name",
            "in": "path",
            "description": "Kind of the relationship (e.g. `hierarchical`, `edge`, `sibling`).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching relationships.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered relationships.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "relationships": {
                          "type": "array",
                          "items": {
                            "openapi": "3.0.0",
                            "info": {
                              "title": "Relationship Core Schema",
                              "description": "Core schema definitions for Relationship and Selector in Meshery.",
                              "version": "v1alpha3",
                              "contact": {
                                "name": "Meshery Maintainers",
                                "email": "maintainers@meshery.io",
                                "url": "https://meshery.io"
                              },
                              "license": {
                                "name": "Apache 2.0",
                                "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
                              }
                            },
                            "paths": {},
                            "components": {
                              "schemas": {
                                "MutatorRef": {
                                  "type": "array",
                                  "description": "JSON ref to value from where patch should be applied.",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                  }
                                },
                                "MutatedRef": {
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                  }
                                },
                                "RelationshipDefinitionSelectorsPatchStrategy": {
                                  "type": "string",
                                  "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                  "enum": [
                                    "merge",
                                    "strategic",
                                    "add",
                                    "remove",
                                    "copy",
                                    "move",
                                    "test"
                                  ]
                                },
                                "RelationshipDefinition_Selectors_Patch": {
                                  "type": "object",
                                  "description": "Patch configuration for the selector",
                                  "properties": {
                                    "patchStrategy": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patchStrategy,omitempty",
                                        "json": "patchStrategy,omitempty"
                                      },
                                      "type": "string",
                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                      "enum": [
                                        "merge",
                                        "strategic",
                                        "add",
                                        "remove",
                                        "copy",
                                        "move",
                                        "test"
                                      ]
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "MatchSelectorItem": {
                                  "type": "object",
                                  "description": "Match selector item for binding between nodes",
                                  "required": [
                                    "kind"
                                  ],
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "MatchSelector": {
                                  "type": "object",
                                  "description": "Match configuration for selector",
                                  "properties": {
                                    "refs": {
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "refs,omitempty",
                                        "json": "refs,omitempty"
                                      }
                                    },
                                    "from": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from,omitempty",
                                        "json": "from,omitempty"
                                      }
                                    },
                                    "to": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to,omitempty",
                                        "json": "to,omitempty"
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match,omitempty",
                                    "json": "match,omitempty"
                                  }
                                },
                                "SelectorItem": {
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "Selector": {
                                  "type": "object",
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "required": [
                                    "from",
                                    "to"
                                  ],
                                  "properties": {
                                    "from": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from",
                                        "json": "from"
                                      }
                                    },
                                    "to": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to",
                                        "json": "to"
                                      }
                                    }
                                  }
                                },
                                "SelectorSetItem": {
                                  "type": "object",
                                  "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                  "required": [
                                    "allow"
                                  ],
                                  "properties": {
                                    "allow": {
                                      "description": "Selectors used to define relationships which are allowed.",
                                      "x-go-type": "Selector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "allow",
                                        "json": "allow"
                                      },
                                      "type": "object",
                                      "required": [
                                        "from",
                                        "to"
                                      ],
                                      "properties": {
                                        "from": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from",
                                            "json": "from"
                                          }
                                        },
                                        "to": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to",
                                            "json": "to"
                                          }
                                        }
                                      }
                                    },
                                    "deny": {
                                      "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                      "x-go-type": "Selector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "deny,omitempty",
                                        "json": "deny,omitempty"
                                      },
                                      "type": "object",
                                      "required": [
                                        "from",
                                        "to"
                                      ],
                                      "properties": {
                                        "from": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from",
                                            "json": "from"
                                          }
                                        },
                                        "to": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to",
                                            "json": "to"
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "SelectorSet": {
                                  "type": "array",
                                  "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "items": {
                                    "x-go-type": "SelectorSetItem",
                                    "type": "object",
                                    "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                    "required": [
                                      "allow"
                                    ],
                                    "properties": {
                                      "allow": {
                                        "description": "Selectors used to define relationships which are allowed.",
                                        "x-go-type": "Selector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "allow",
                                          "json": "allow"
                                        },
                                        "type": "object",
                                        "required": [
                                          "from",
                                          "to"
                                        ],
                                        "properties": {
                                          "from": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from",
                                              "json": "from"
                                            }
                                          },
                                          "to": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to",
                                              "json": "to"
                                            }
                                          }
                                        }
                                      },
                                      "deny": {
                                        "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                        "x-go-type": "Selector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "deny,omitempty",
                                          "json": "deny,omitempty"
                                        },
                                        "type": "object",
                                        "required": [
                                          "from",
                                          "to"
                                        ],
                                        "properties": {
                                          "from": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from",
                                              "json": "from"
                                            }
                                          },
                                          "to": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to",
                                              "json": "to"
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "RelationshipDefinitionMetadataStylesTextTransform": {
                                  "type": "string",
                                  "description": "A transformation to apply to the label text",
                                  "enum": [
                                    "none",
                                    "uppercase",
                                    "lowercase"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesLineStyle": {
                                  "type": "string",
                                  "description": "The style of the edge's line.",
                                  "enum": [
                                    "solid",
                                    "dotted",
                                    "dashed"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesCurveStyle": {
                                  "type": "string",
                                  "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                  "enum": [
                                    "haystack",
                                    "straight",
                                    "bezier",
                                    "unbundled-bezier",
                                    "segments",
                                    "taxi"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesLineCap": {
                                  "type": "string",
                                  "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                  "enum": [
                                    "butt",
                                    "round",
                                    "square"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesMidTargetArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's source arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesMidTargetArrowFill": {
                                  "type": "string",
                                  "description": "The fill state of the edge's source arrow",
                                  "enum": [
                                    "filled",
                                    "hollow"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesTargetArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's source arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesTargetArrowFill": {
                                  "type": "string",
                                  "description": "The fill state of the edge's source arrow",
                                  "enum": [
                                    "filled",
                                    "hollow"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStyles": {
                                  "type": "object",
                                  "description": "Visualization styles for a relationship",
                                  "required": [
                                    "primaryColor",
                                    "svgColor",
                                    "svgWhite"
                                  ],
                                  "properties": {
                                    "primaryColor": {
                                      "type": "string",
                                      "description": "Primary color of the component used for UI representation.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "primaryColor",
                                        "json": "primaryColor"
                                      }
                                    },
                                    "secondaryColor": {
                                      "type": "string",
                                      "description": "Secondary color of the entity used for UI representation.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "secondaryColor,omitempty",
                                        "json": "secondaryColor,omitempty"
                                      }
                                    },
                                    "svgWhite": {
                                      "type": "string",
                                      "description": "White SVG of the entity used for UI representation on dark background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgWhite",
                                        "json": "svgWhite"
                                      }
                                    },
                                    "svgColor": {
                                      "type": "string",
                                      "description": "Colored SVG of the entity used for UI representation on light background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgColor",
                                        "json": "svgColor"
                                      }
                                    },
                                    "svgComplete": {
                                      "type": "string",
                                      "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgComplete,omitempty",
                                        "json": "svgComplete,omitempty"
                                      }
                                    },
                                    "color": {
                                      "type": "string",
                                      "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "color,omitempty",
                                        "json": "color,omitempty"
                                      }
                                    },
                                    "text-opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "The opacity of the label text, including its outline.",
                                      "x-go-name": "TextOpacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "text-opacity,omitempty",
                                        "json": "text-opacity,omitempty"
                                      }
                                    },
                                    "font-family": {
                                      "type": "string",
                                      "description": "A comma-separated list of font names to use on the label text.",
                                      "x-go-name": "FontFamily",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-family,omitempty",
                                        "json": "font-family,omitempty"
                                      }
                                    },
                                    "font-size": {
                                      "type": "string",
                                      "description": "The size of the label text.",
                                      "x-go-name": "FontSize",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-size,omitempty",
                                        "json": "font-size,omitempty"
                                      }
                                    },
                                    "font-style": {
                                      "type": "string",
                                      "description": "A CSS font style to be applied to the label text.",
                                      "x-go-name": "FontStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-style,omitempty",
                                        "json": "font-style,omitempty"
                                      }
                                    },
                                    "font-weight": {
                                      "type": "string",
                                      "description": "A CSS font weight to be applied to the label text.",
                                      "x-go-name": "FontWeight",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-weight,omitempty",
                                        "json": "font-weight,omitempty"
                                      }
                                    },
                                    "text-transform": {
                                      "description": "A transformation to apply to the label text",
                                      "x-go-name": "TextTransform",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "text-transform,omitempty",
                                        "json": "text-transform,omitempty"
                                      },
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "uppercase",
                                        "lowercase"
                                      ]
                                    },
                                    "opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "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.See https://js.cytoscape.org/#style/visibility",
                                      "x-go-name": "Opacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "opacity,omitempty",
                                        "json": "opacity,omitempty"
                                      }
                                    },
                                    "z-index": {
                                      "type": "integer",
                                      "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.",
                                      "x-go-name": "ZIndex",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "z-index,omitempty",
                                        "json": "z-index,omitempty"
                                      }
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "Label",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "label,omitempty",
                                        "json": "label,omitempty"
                                      }
                                    },
                                    "edge-animation": {
                                      "type": "string",
                                      "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                      "x-go-name": "EdgeAnimation",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "edge-animation,omitempty",
                                        "json": "edge-animation,omitempty"
                                      }
                                    },
                                    "curve-style": {
                                      "x-go-name": "CurveStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "curve-style,omitempty",
                                        "json": "curve-style,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                      "enum": [
                                        "haystack",
                                        "straight",
                                        "bezier",
                                        "unbundled-bezier",
                                        "segments",
                                        "taxi"
                                      ]
                                    },
                                    "line-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "LineColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-color,omitempty",
                                        "json": "line-color,omitempty"
                                      }
                                    },
                                    "line-style": {
                                      "x-go-name": "LineStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-style,omitempty",
                                        "json": "line-style,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The style of the edge's line.",
                                      "enum": [
                                        "solid",
                                        "dotted",
                                        "dashed"
                                      ]
                                    },
                                    "line-cap": {
                                      "x-go-name": "LineCap",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-cap,omitempty",
                                        "json": "line-cap,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                      "enum": [
                                        "butt",
                                        "round",
                                        "square"
                                      ]
                                    },
                                    "line-opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                      "x-go-name": "LineOpacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-opacity,omitempty",
                                        "json": "line-opacity,omitempty"
                                      }
                                    },
                                    "target-arrow-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "TargetArrowColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-color,omitempty",
                                        "json": "target-arrow-color,omitempty"
                                      }
                                    },
                                    "target-arrow-shape": {
                                      "x-go-name": "TargetArrowShape",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-shape,omitempty",
                                        "json": "target-arrow-shape,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The shape of the edge's source arrow",
                                      "enum": [
                                        "triangle",
                                        "triangle-tee",
                                        "circle-triangle",
                                        "triangle-cross",
                                        "triangle-backcurve",
                                        "vee",
                                        "tee",
                                        "square",
                                        "circle",
                                        "diamond",
                                        "chevron",
                                        "none"
                                      ]
                                    },
                                    "target-arrow-fill": {
                                      "x-go-name": "TargetArrowFill",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-fill,omitempty",
                                        "json": "target-arrow-fill,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The fill state of the edge's source arrow",
                                      "enum": [
                                        "filled",
                                        "hollow"
                                      ]
                                    },
                                    "mid-target-arrow-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "MidTargetArrowColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-color,omitempty",
                                        "json": "mid-target-arrow-color,omitempty"
                                      }
                                    },
                                    "mid-target-arrow-shape": {
                                      "x-go-name": "MidTargetArrowShape",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-shape,omitempty",
                                        "json": "mid-target-arrow-shape,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The shape of the edge's source arrow",
                                      "enum": [
                                        "triangle",
                                        "triangle-tee",
                                        "circle-triangle",
                                        "triangle-cross",
                                        "triangle-backcurve",
                                        "vee",
                                        "tee",
                                        "square",
                                        "circle",
                                        "diamond",
                                        "chevron",
                                        "none"
                                      ]
                                    },
                                    "mid-target-arrow-fill": {
                                      "x-go-name": "MidTargetArrowFill",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-fill,omitempty",
                                        "json": "mid-target-arrow-fill,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The fill state of the edge's source arrow",
                                      "enum": [
                                        "filled",
                                        "hollow"
                                      ]
                                    },
                                    "arrow-scale": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "Scaling for the arrow size.",
                                      "x-go-name": "ArrowScale",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "arrow-scale,omitempty",
                                        "json": "arrow-scale,omitempty"
                                      }
                                    },
                                    "source-label": {
                                      "type": "string",
                                      "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "SourceLabel",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "source-label,omitempty",
                                        "json": "source-label,omitempty"
                                      }
                                    },
                                    "target-label": {
                                      "type": "string",
                                      "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "TargetLabel",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-label,omitempty",
                                        "json": "target-label,omitempty"
                                      }
                                    }
                                  }
                                },
                                "Relationship_Metadata": {
                                  "type": "object",
                                  "description": "Metadata contains additional information associated with the Relationship.",
                                  "additionalProperties": true,
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "properties": {
                                    "description": {
                                      "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "description",
                                        "json": "description"
                                      }
                                    },
                                    "styles": {
                                      "x-go-type": "RelationshipDefinitionMetadataStyles",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "styles",
                                        "json": "styles"
                                      },
                                      "type": "object",
                                      "description": "Visualization styles for a relationship",
                                      "required": [
                                        "primaryColor",
                                        "svgColor",
                                        "svgWhite"
                                      ],
                                      "properties": {
                                        "primaryColor": {
                                          "type": "string",
                                          "description": "Primary color of the component used for UI representation.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "primaryColor",
                                            "json": "primaryColor"
                                          }
                                        },
                                        "secondaryColor": {
                                          "type": "string",
                                          "description": "Secondary color of the entity used for UI representation.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "secondaryColor,omitempty",
                                            "json": "secondaryColor,omitempty"
                                          }
                                        },
                                        "svgWhite": {
                                          "type": "string",
                                          "description": "White SVG of the entity used for UI representation on dark background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgWhite",
                                            "json": "svgWhite"
                                          }
                                        },
                                        "svgColor": {
                                          "type": "string",
                                          "description": "Colored SVG of the entity used for UI representation on light background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgColor",
                                            "json": "svgColor"
                                          }
                                        },
                                        "svgComplete": {
                                          "type": "string",
                                          "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgComplete,omitempty",
                                            "json": "svgComplete,omitempty"
                                          }
                                        },
                                        "color": {
                                          "type": "string",
                                          "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "color,omitempty",
                                            "json": "color,omitempty"
                                          }
                                        },
                                        "text-opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "The opacity of the label text, including its outline.",
                                          "x-go-name": "TextOpacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "text-opacity,omitempty",
                                            "json": "text-opacity,omitempty"
                                          }
                                        },
                                        "font-family": {
                                          "type": "string",
                                          "description": "A comma-separated list of font names to use on the label text.",
                                          "x-go-name": "FontFamily",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-family,omitempty",
                                            "json": "font-family,omitempty"
                                          }
                                        },
                                        "font-size": {
                                          "type": "string",
                                          "description": "The size of the label text.",
                                          "x-go-name": "FontSize",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-size,omitempty",
                                            "json": "font-size,omitempty"
                                          }
                                        },
                                        "font-style": {
                                          "type": "string",
                                          "description": "A CSS font style to be applied to the label text.",
                                          "x-go-name": "FontStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-style,omitempty",
                                            "json": "font-style,omitempty"
                                          }
                                        },
                                        "font-weight": {
                                          "type": "string",
                                          "description": "A CSS font weight to be applied to the label text.",
                                          "x-go-name": "FontWeight",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-weight,omitempty",
                                            "json": "font-weight,omitempty"
                                          }
                                        },
                                        "text-transform": {
                                          "description": "A transformation to apply to the label text",
                                          "x-go-name": "TextTransform",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "text-transform,omitempty",
                                            "json": "text-transform,omitempty"
                                          },
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "uppercase",
                                            "lowercase"
                                          ]
                                        },
                                        "opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "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.See https://js.cytoscape.org/#style/visibility",
                                          "x-go-name": "Opacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "opacity,omitempty",
                                            "json": "opacity,omitempty"
                                          }
                                        },
                                        "z-index": {
                                          "type": "integer",
                                          "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.",
                                          "x-go-name": "ZIndex",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "z-index,omitempty",
                                            "json": "z-index,omitempty"
                                          }
                                        },
                                        "label": {
                                          "type": "string",
                                          "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "Label",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "label,omitempty",
                                            "json": "label,omitempty"
                                          }
                                        },
                                        "edge-animation": {
                                          "type": "string",
                                          "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                          "x-go-name": "EdgeAnimation",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "edge-animation,omitempty",
                                            "json": "edge-animation,omitempty"
                                          }
                                        },
                                        "curve-style": {
                                          "x-go-name": "CurveStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "curve-style,omitempty",
                                            "json": "curve-style,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                          "enum": [
                                            "haystack",
                                            "straight",
                                            "bezier",
                                            "unbundled-bezier",
                                            "segments",
                                            "taxi"
                                          ]
                                        },
                                        "line-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "LineColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-color,omitempty",
                                            "json": "line-color,omitempty"
                                          }
                                        },
                                        "line-style": {
                                          "x-go-name": "LineStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-style,omitempty",
                                            "json": "line-style,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The style of the edge's line.",
                                          "enum": [
                                            "solid",
                                            "dotted",
                                            "dashed"
                                          ]
                                        },
                                        "line-cap": {
                                          "x-go-name": "LineCap",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-cap,omitempty",
                                            "json": "line-cap,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                          "enum": [
                                            "butt",
                                            "round",
                                            "square"
                                          ]
                                        },
                                        "line-opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                          "x-go-name": "LineOpacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-opacity,omitempty",
                                            "json": "line-opacity,omitempty"
                                          }
                                        },
                                        "target-arrow-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "TargetArrowColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-color,omitempty",
                                            "json": "target-arrow-color,omitempty"
                                          }
                                        },
                                        "target-arrow-shape": {
                                          "x-go-name": "TargetArrowShape",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-shape,omitempty",
                                            "json": "target-arrow-shape,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The shape of the edge's source arrow",
                                          "enum": [
                                            "triangle",
                                            "triangle-tee",
                                            "circle-triangle",
                                            "triangle-cross",
                                            "triangle-backcurve",
                                            "vee",
                                            "tee",
                                            "square",
                                            "circle",
                                            "diamond",
                                            "chevron",
                                            "none"
                                          ]
                                        },
                                        "target-arrow-fill": {
                                          "x-go-name": "TargetArrowFill",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-fill,omitempty",
                                            "json": "target-arrow-fill,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The fill state of the edge's source arrow",
                                          "enum": [
                                            "filled",
                                            "hollow"
                                          ]
                                        },
                                        "mid-target-arrow-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "MidTargetArrowColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-color,omitempty",
                                            "json": "mid-target-arrow-color,omitempty"
                                          }
                                        },
                                        "mid-target-arrow-shape": {
                                          "x-go-name": "MidTargetArrowShape",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-shape,omitempty",
                                            "json": "mid-target-arrow-shape,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The shape of the edge's source arrow",
                                          "enum": [
                                            "triangle",
                                            "triangle-tee",
                                            "circle-triangle",
                                            "triangle-cross",
                                            "triangle-backcurve",
                                            "vee",
                                            "tee",
                                            "square",
                                            "circle",
                                            "diamond",
                                            "chevron",
                                            "none"
                                          ]
                                        },
                                        "mid-target-arrow-fill": {
                                          "x-go-name": "MidTargetArrowFill",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-fill,omitempty",
                                            "json": "mid-target-arrow-fill,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The fill state of the edge's source arrow",
                                          "enum": [
                                            "filled",
                                            "hollow"
                                          ]
                                        },
                                        "arrow-scale": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "Scaling for the arrow size.",
                                          "x-go-name": "ArrowScale",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "arrow-scale,omitempty",
                                            "json": "arrow-scale,omitempty"
                                          }
                                        },
                                        "source-label": {
                                          "type": "string",
                                          "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "SourceLabel",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "source-label,omitempty",
                                            "json": "source-label,omitempty"
                                          }
                                        },
                                        "target-label": {
                                          "type": "string",
                                          "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "TargetLabel",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-label,omitempty",
                                            "json": "target-label,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "isAnnotation": {
                                      "type": "boolean",
                                      "description": "Indicates whether the relationship should be treated as a logical representation only",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "isAnnotation",
                                        "json": "isAnnotation"
                                      }
                                    }
                                  }
                                },
                                "RelationshipDefinition": {
                                  "description": "Relationships define the nature of interaction between interconnected components in Meshery. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs.meshery.io/concepts/logical/relationships.",
                                  "type": "object",
                                  "required": [
                                    "schemaVersion",
                                    "version",
                                    "model",
                                    "kind",
                                    "type",
                                    "subType",
                                    "id"
                                  ],
                                  "properties": {
                                    "id": {
                                      "description": "Uniquely identifies the entity",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 1,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "schemaVersion": {
                                      "description": "Specifies the version of the schema used for the relationship definition.",
                                      "x-order": 8,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "schemaVersion",
                                        "json": "schemaVersion"
                                      },
                                      "type": "string",
                                      "minLength": 2,
                                      "maxLength": 100,
                                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                      "example": [
                                        "v1",
                                        "v1alpha1",
                                        "v2beta3",
                                        "v1.custom-suffix",
                                        "models.meshery.io/v1beta1",
                                        "capability.meshery.io/v1alpha1"
                                      ]
                                    },
                                    "version": {
                                      "description": "Specifies the version of the relationship definition.",
                                      "x-order": 13,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "version",
                                        "json": "version"
                                      },
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    },
                                    "kind": {
                                      "description": "Kind of the Relationship. Learn more about relationships - https://docs.meshery.io/concepts/logical/relationships.",
                                      "type": "string",
                                      "enum": [
                                        "hierarchical",
                                        "edge",
                                        "sibling"
                                      ],
                                      "x-order": 4,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "type": {
                                      "description": "Classification of relationships. Used to group relationships similar in nature.",
                                      "type": "string",
                                      "x-go-name": "RelationshipType",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 12,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "type",
                                        "json": "type",
                                        "gorm": "column:type"
                                      }
                                    },
                                    "subType": {
                                      "description": "Most granular unit of relationship classification. The combination of Kind, Type and SubType together uniquely identify a Relationship.",
                                      "type": "string",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 10,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "subType",
                                        "json": "subType"
                                      }
                                    },
                                    "status": {
                                      "type": "string",
                                      "description": "Status of the relationship.",
                                      "enum": [
                                        "enabled",
                                        "ignored",
                                        "deleted",
                                        "approved",
                                        "pending"
                                      ],
                                      "x-order": 11,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "status",
                                        "json": "status"
                                      }
                                    },
                                    "capabilities": {
                                      "type": "array",
                                      "description": "Capabilities associated with the relationship.",
                                      "x-order": 2,
                                      "items": {
                                        "x-go-type": "capabilityv1alpha1.Capability",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                          "name": "capabilityv1alpha1"
                                        },
                                        "$id": "https://schemas.meshery.io/capability.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "description",
                                          "schemaVersion",
                                          "version",
                                          "displayName",
                                          "kind",
                                          "type",
                                          "subType",
                                          "entityState",
                                          "key",
                                          "status"
                                        ],
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "properties": {
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema to which the capability definition conforms.",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the capability definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "description": "Name of the capability in human-readible format.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "description": {
                                            "type": "string",
                                            "description": "A written representation of the purpose and characteristics of the capability."
                                          },
                                          "kind": {
                                            "description": "Top-level categorization of the capability",
                                            "additionalProperties": false,
                                            "anyOf": [
                                              {
                                                "const": "action",
                                                "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                              },
                                              {
                                                "const": "mutate",
                                                "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                              },
                                              {
                                                "const": "view",
                                                "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                              },
                                              {
                                                "const": "interaction",
                                                "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                              }
                                            ],
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "type": {
                                            "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "subType": {
                                            "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "key": {
                                            "description": "Key that backs the capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "entityState": {
                                            "description": "State of the entity in which the capability is applicable.",
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "enum": [
                                                "declaration",
                                                "instance"
                                              ],
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                              "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                            }
                                          },
                                          "status": {
                                            "type": "string",
                                            "description": "Status of the capability",
                                            "default": "enabled",
                                            "enum": [
                                              "enabled",
                                              "disabled"
                                            ]
                                          },
                                          "metadata": {
                                            "type": "object",
                                            "description": "Metadata contains additional information associated with the capability. Extension point.",
                                            "additionalProperties": true
                                          }
                                        },
                                        "default": [
                                          {
                                            "description": "Configure the visual styles for the component",
                                            "displayName": "Styling",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Change the shape of the component",
                                            "displayName": "Change Shape",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "shape",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Drag and Drop a component into a parent component in graph view",
                                            "displayName": "Compound Drag And Drop",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "interaction",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "compoundDnd",
                                            "type": "graph",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Add text to nodes body",
                                            "displayName": "Body Text",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "body-text",
                                            "type": "style",
                                            "version": "0.7.0"
                                          }
                                        ]
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "capabilities",
                                        "json": "capabilities,omitempty",
                                        "gorm": "type:bytes;serializer:json"
                                      }
                                    },
                                    "metadata": {
                                      "x-go-type": "Relationship_Metadata",
                                      "x-order": 5,
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json",
                                        "yaml": "metadata",
                                        "json": "metadata,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Metadata contains additional information associated with the Relationship.",
                                      "additionalProperties": true,
                                      "properties": {
                                        "description": {
                                          "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                          "type": "string",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "description",
                                            "json": "description"
                                          }
                                        },
                                        "styles": {
                                          "x-go-type": "RelationshipDefinitionMetadataStyles",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "styles",
                                            "json": "styles"
                                          },
                                          "type": "object",
                                          "description": "Visualization styles for a relationship",
                                          "required": [
                                            "primaryColor",
                                            "svgColor",
                                            "svgWhite"
                                          ],
                                          "properties": {
                                            "primaryColor": {
                                              "type": "string",
                                              "description": "Primary color of the component used for UI representation.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "primaryColor",
                                                "json": "primaryColor"
                                              }
                                            },
                                            "secondaryColor": {
                                              "type": "string",
                                              "description": "Secondary color of the entity used for UI representation.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "secondaryColor,omitempty",
                                                "json": "secondaryColor,omitempty"
                                              }
                                            },
                                            "svgWhite": {
                                              "type": "string",
                                              "description": "White SVG of the entity used for UI representation on dark background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgWhite",
                                                "json": "svgWhite"
                                              }
                                            },
                                            "svgColor": {
                                              "type": "string",
                                              "description": "Colored SVG of the entity used for UI representation on light background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgColor",
                                                "json": "svgColor"
                                              }
                                            },
                                            "svgComplete": {
                                              "type": "string",
                                              "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgComplete,omitempty",
                                                "json": "svgComplete,omitempty"
                                              }
                                            },
                                            "color": {
                                              "type": "string",
                                              "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "color,omitempty",
                                                "json": "color,omitempty"
                                              }
                                            },
                                            "text-opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "The opacity of the label text, including its outline.",
                                              "x-go-name": "TextOpacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "text-opacity,omitempty",
                                                "json": "text-opacity,omitempty"
                                              }
                                            },
                                            "font-family": {
                                              "type": "string",
                                              "description": "A comma-separated list of font names to use on the label text.",
                                              "x-go-name": "FontFamily",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-family,omitempty",
                                                "json": "font-family,omitempty"
                                              }
                                            },
                                            "font-size": {
                                              "type": "string",
                                              "description": "The size of the label text.",
                                              "x-go-name": "FontSize",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-size,omitempty",
                                                "json": "font-size,omitempty"
                                              }
                                            },
                                            "font-style": {
                                              "type": "string",
                                              "description": "A CSS font style to be applied to the label text.",
                                              "x-go-name": "FontStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-style,omitempty",
                                                "json": "font-style,omitempty"
                                              }
                                            },
                                            "font-weight": {
                                              "type": "string",
                                              "description": "A CSS font weight to be applied to the label text.",
                                              "x-go-name": "FontWeight",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-weight,omitempty",
                                                "json": "font-weight,omitempty"
                                              }
                                            },
                                            "text-transform": {
                                              "description": "A transformation to apply to the label text",
                                              "x-go-name": "TextTransform",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "text-transform,omitempty",
                                                "json": "text-transform,omitempty"
                                              },
                                              "type": "string",
                                              "enum": [
                                                "none",
                                                "uppercase",
                                                "lowercase"
                                              ]
                                            },
                                            "opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "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.See https://js.cytoscape.org/#style/visibility",
                                              "x-go-name": "Opacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "opacity,omitempty",
                                                "json": "opacity,omitempty"
                                              }
                                            },
                                            "z-index": {
                                              "type": "integer",
                                              "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.",
                                              "x-go-name": "ZIndex",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "z-index,omitempty",
                                                "json": "z-index,omitempty"
                                              }
                                            },
                                            "label": {
                                              "type": "string",
                                              "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "Label",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "label,omitempty",
                                                "json": "label,omitempty"
                                              }
                                            },
                                            "edge-animation": {
                                              "type": "string",
                                              "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                              "x-go-name": "EdgeAnimation",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "edge-animation,omitempty",
                                                "json": "edge-animation,omitempty"
                                              }
                                            },
                                            "curve-style": {
                                              "x-go-name": "CurveStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "curve-style,omitempty",
                                                "json": "curve-style,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                              "enum": [
                                                "haystack",
                                                "straight",
                                                "bezier",
                                                "unbundled-bezier",
                                                "segments",
                                                "taxi"
                                              ]
                                            },
                                            "line-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "LineColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-color,omitempty",
                                                "json": "line-color,omitempty"
                                              }
                                            },
                                            "line-style": {
                                              "x-go-name": "LineStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-style,omitempty",
                                                "json": "line-style,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The style of the edge's line.",
                                              "enum": [
                                                "solid",
                                                "dotted",
                                                "dashed"
                                              ]
                                            },
                                            "line-cap": {
                                              "x-go-name": "LineCap",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-cap,omitempty",
                                                "json": "line-cap,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                              "enum": [
                                                "butt",
                                                "round",
                                                "square"
                                              ]
                                            },
                                            "line-opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                              "x-go-name": "LineOpacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-opacity,omitempty",
                                                "json": "line-opacity,omitempty"
                                              }
                                            },
                                            "target-arrow-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "TargetArrowColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-color,omitempty",
                                                "json": "target-arrow-color,omitempty"
                                              }
                                            },
                                            "target-arrow-shape": {
                                              "x-go-name": "TargetArrowShape",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-shape,omitempty",
                                                "json": "target-arrow-shape,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The shape of the edge's source arrow",
                                              "enum": [
                                                "triangle",
                                                "triangle-tee",
                                                "circle-triangle",
                                                "triangle-cross",
                                                "triangle-backcurve",
                                                "vee",
                                                "tee",
                                                "square",
                                                "circle",
                                                "diamond",
                                                "chevron",
                                                "none"
                                              ]
                                            },
                                            "target-arrow-fill": {
                                              "x-go-name": "TargetArrowFill",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-fill,omitempty",
                                                "json": "target-arrow-fill,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The fill state of the edge's source arrow",
                                              "enum": [
                                                "filled",
                                                "hollow"
                                              ]
                                            },
                                            "mid-target-arrow-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "MidTargetArrowColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-color,omitempty",
                                                "json": "mid-target-arrow-color,omitempty"
                                              }
                                            },
                                            "mid-target-arrow-shape": {
                                              "x-go-name": "MidTargetArrowShape",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-shape,omitempty",
                                                "json": "mid-target-arrow-shape,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The shape of the edge's source arrow",
                                              "enum": [
                                                "triangle",
                                                "triangle-tee",
                                                "circle-triangle",
                                                "triangle-cross",
                                                "triangle-backcurve",
                                                "vee",
                                                "tee",
                                                "square",
                                                "circle",
                                                "diamond",
                                                "chevron",
                                                "none"
                                              ]
                                            },
                                            "mid-target-arrow-fill": {
                                              "x-go-name": "MidTargetArrowFill",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-fill,omitempty",
                                                "json": "mid-target-arrow-fill,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The fill state of the edge's source arrow",
                                              "enum": [
                                                "filled",
                                                "hollow"
                                              ]
                                            },
                                            "arrow-scale": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "Scaling for the arrow size.",
                                              "x-go-name": "ArrowScale",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "arrow-scale,omitempty",
                                                "json": "arrow-scale,omitempty"
                                              }
                                            },
                                            "source-label": {
                                              "type": "string",
                                              "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "SourceLabel",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "source-label,omitempty",
                                                "json": "source-label,omitempty"
                                              }
                                            },
                                            "target-label": {
                                              "type": "string",
                                              "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "TargetLabel",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-label,omitempty",
                                                "json": "target-label,omitempty"
                                              }
                                            }
                                          }
                                        },
                                        "isAnnotation": {
                                          "type": "boolean",
                                          "description": "Indicates whether the relationship should be treated as a logical representation only",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "isAnnotation",
                                            "json": "isAnnotation"
                                          }
                                        }
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 6,
                                      "description": "Model 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",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model",
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "modelId": {
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-go-name": "ModelId",
                                      "x-order": 7,
                                      "description": "Foreign key reference to the model",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "-",
                                        "gorm": "index:idx_relationship_definition_dbs_model_id,column:model_id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "evaluationQuery": {
                                      "description": "Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs.",
                                      "type": "string",
                                      "x-order": 3,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "evaluationQuery",
                                        "json": "evaluationQuery"
                                      }
                                    },
                                    "selectors": {
                                      "x-go-type": "SelectorSet",
                                      "x-order": 9,
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json",
                                        "yaml": "selectors,omitempty",
                                        "json": "selectors,omitempty"
                                      },
                                      "type": "array",
                                      "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                                      "items": {
                                        "x-go-type": "SelectorSetItem",
                                        "type": "object",
                                        "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                        "required": [
                                          "allow"
                                        ],
                                        "properties": {
                                          "allow": {
                                            "description": "Selectors used to define relationships which are allowed.",
                                            "x-go-type": "Selector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "allow",
                                              "json": "allow"
                                            },
                                            "type": "object",
                                            "required": [
                                              "from",
                                              "to"
                                            ],
                                            "properties": {
                                              "from": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from",
                                                  "json": "from"
                                                }
                                              },
                                              "to": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to",
                                                  "json": "to"
                                                }
                                              }
                                            }
                                          },
                                          "deny": {
                                            "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                            "x-go-type": "Selector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "deny,omitempty",
                                              "json": "deny,omitempty"
                                            },
                                            "type": "object",
                                            "required": [
                                              "from",
                                              "to"
                                            ],
                                            "properties": {
                                              "from": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from",
                                                  "json": "from"
                                                }
                                              },
                                              "to": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to",
                                                  "json": "to"
                                                }
                                              }
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          },
                          "description": "The relationships matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}/policies": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryPoliciesByModel",
        "summary": "List policies of a model",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of policies belonging to the model.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered policies.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "policies": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": "A registered policy definition.",
                            "additionalProperties": true
                          },
                          "description": "The policies matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/models/{model}/policies/{name}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryPoliciesByModelAndName",
        "summary": "Get policies of a model by name",
        "security": [],
        "parameters": [
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "name",
            "in": "path",
            "description": "Name of the policy.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching policies.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered policies.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "policies": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": "A registered policy definition.",
                            "additionalProperties": true
                          },
                          "description": "The policies matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryCategories",
        "summary": "List registry categories",
        "security": [],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of categories.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registry categories.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "categories": {
                          "type": "array",
                          "items": {
                            "$id": "https://schemas.meshery.io/category.yaml",
                            "$schema": "http://json-schema.org/draft-07/schema#",
                            "type": "object",
                            "additionalProperties": false,
                            "description": "Category of the model.",
                            "required": [
                              "id",
                              "name",
                              "metadata"
                            ],
                            "properties": {
                              "id": {
                                "x-order": 1,
                                "type": "string",
                                "format": "uuid",
                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "name": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "name",
                                  "json": "name",
                                  "gorm": "name"
                                },
                                "default": "Uncategorized",
                                "description": "The category of the model that determines the main grouping.",
                                "helperText": "Select a model category",
                                "enum": [
                                  "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"
                                ],
                                "x-order": 2
                              },
                              "metadata": {
                                "description": "Additional metadata associated with the category.",
                                "type": "object",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "metadata,omitempty",
                                  "json": "metadata,omitempty",
                                  "gorm": "type:bytes;serializer:json"
                                },
                                "x-order": 3
                              }
                            }
                          },
                          "description": "The categories matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryCategoriesByName",
        "summary": "Get registry categories by name",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "When `true`, the category name is matched greedily (substring match).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching categories.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registry categories.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "categories": {
                          "type": "array",
                          "items": {
                            "$id": "https://schemas.meshery.io/category.yaml",
                            "$schema": "http://json-schema.org/draft-07/schema#",
                            "type": "object",
                            "additionalProperties": false,
                            "description": "Category of the model.",
                            "required": [
                              "id",
                              "name",
                              "metadata"
                            ],
                            "properties": {
                              "id": {
                                "x-order": 1,
                                "type": "string",
                                "format": "uuid",
                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "name": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "name",
                                  "json": "name",
                                  "gorm": "name"
                                },
                                "default": "Uncategorized",
                                "description": "The category of the model that determines the main grouping.",
                                "helperText": "Select a model category",
                                "enum": [
                                  "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"
                                ],
                                "x-order": 2
                              },
                              "metadata": {
                                "description": "Additional metadata associated with the category.",
                                "type": "object",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "metadata,omitempty",
                                  "json": "metadata,omitempty",
                                  "gorm": "type:bytes;serializer:json"
                                },
                                "x-order": 3
                              }
                            }
                          },
                          "description": "The categories matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}/models": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryModelsByCategory",
        "summary": "List registered models in a category",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "components",
            "in": "query",
            "description": "When `true`, embeds the model's component definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "relationships",
            "in": "query",
            "description": "When `true`, embeds the model's relationship definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of models in the category.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered models.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "models": {
                          "type": "array",
                          "items": {
                            "description": "A registered model, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/model.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema used for the definition.",
                                    "x-order": 2,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "schemaVersion"
                                    },
                                    "default": "models.meshery.io/v1beta2",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "description": "Version of the model definition.",
                                    "type": "string",
                                    "x-order": 3,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "version"
                                    },
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "The unique name for the model within the scope of a registrant.",
                                    "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                    "pattern": "^[a-z0-9-]+$",
                                    "examples": [
                                      "cert-manager"
                                    ],
                                    "x-order": 4,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "name"
                                    },
                                    "default": "untitled-model"
                                  },
                                  "displayName": {
                                    "description": "Human-readable name for the model.",
                                    "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "type": "string",
                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                    "examples": [
                                      "Cert Manager"
                                    ],
                                    "x-order": 5,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "displayName"
                                    },
                                    "default": "Untitled Model"
                                  },
                                  "description": {
                                    "type": "string",
                                    "default": "A new Meshery model.",
                                    "description": "Description of the model.",
                                    "minLength": 1,
                                    "maxLength": 1000,
                                    "x-order": 6,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "description,omitempty"
                                    }
                                  },
                                  "status": {
                                    "type": "string",
                                    "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate"
                                    ],
                                    "x-order": 7,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "status"
                                    },
                                    "default": "enabled"
                                  },
                                  "registrant": {
                                    "description": "Connection identifying the entity that registered this model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrant",
                                      "gorm": "foreignKey:RegistrantId;references:ID"
                                    },
                                    "x-order": 8,
                                    "x-go-type": "connectionv1beta1.Connection",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                      "name": "connectionv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/connection.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "name",
                                      "type",
                                      "subType",
                                      "kind",
                                      "status"
                                    ],
                                    "properties": {
                                      "id": {
                                        "description": "Connection ID",
                                        "x-order": 1,
                                        "x-go-name": "ID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "id",
                                          "yaml": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "name",
                                          "yaml": "name"
                                        },
                                        "x-order": 2,
                                        "type": "string",
                                        "description": "Connection Name"
                                      },
                                      "credentialId": {
                                        "x-go-name": "CredentialID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "credential_id",
                                          "yaml": "credentialId"
                                        },
                                        "x-order": 3,
                                        "description": "Associated Credential ID",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "type": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "type",
                                          "yaml": "type"
                                        },
                                        "x-order": 4,
                                        "type": "string",
                                        "description": "Connection Type (platform, telemetry, collaboration)"
                                      },
                                      "subType": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "sub_type",
                                          "yaml": "subType"
                                        },
                                        "x-order": 5,
                                        "type": "string",
                                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                      },
                                      "kind": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "kind",
                                          "yaml": "kind"
                                        },
                                        "x-order": 6,
                                        "type": "string",
                                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                      },
                                      "metadata": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 7,
                                        "x-go-type": "core.Map",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "type": "object",
                                        "description": "Additional connection metadata"
                                      },
                                      "status": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "status",
                                          "yaml": "status"
                                        },
                                        "x-order": 8,
                                        "description": "Connection Status",
                                        "type": "string",
                                        "enum": [
                                          "discovered",
                                          "registered",
                                          "connected",
                                          "ignored",
                                          "maintenance",
                                          "disconnected",
                                          "deleted",
                                          "not found"
                                        ]
                                      },
                                      "user_id": {
                                        "x-go-name": "UserID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "owner",
                                          "yaml": "user_id"
                                        },
                                        "x-order": 9,
                                        "description": "User ID who owns this connection",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "created_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-order": 10,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-order": 11,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "deleted_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "deleted_at",
                                          "yaml": "deleted_at"
                                        },
                                        "x-order": 12,
                                        "description": "SQL null Timestamp to handle null values of time.",
                                        "x-go-type": "meshcore.NullTime",
                                        "x-go-type-import": {
                                          "name": "meshcore",
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "environments": {
                                        "type": "array",
                                        "description": "Associated environments for this connection",
                                        "items": {
                                          "x-go-type": "*environmentv1beta1.Environment",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                            "name": "environmentv1beta1"
                                          },
                                          "$id": "https://schemas.meshery.io/environment.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "title": "Environment",
                                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "example": {
                                            "id": "00000000-0000-0000-0000-000000000000",
                                            "schemaVersion": "environments.meshery.io/v1beta1",
                                            "name": "Production Environment",
                                            "description": "Connections and credentials for the production cluster.",
                                            "organization_id": "00000000-0000-0000-0000-000000000000",
                                            "owner": "00000000-0000-0000-0000-000000000000",
                                            "created_at": "0001-01-01T00:00:00Z",
                                            "metadata": {},
                                            "updated_at": "0001-01-01T00:00:00Z",
                                            "deleted_at": null
                                          },
                                          "required": [
                                            "id",
                                            "schemaVersion",
                                            "name",
                                            "description",
                                            "organization_id"
                                          ],
                                          "properties": {
                                            "id": {
                                              "description": "ID",
                                              "x-order": 1,
                                              "x-go-name": "ID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "id",
                                                "yaml": "id"
                                              },
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the environment conforms.",
                                              "x-order": 2,
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "schemaVersion",
                                                "db": "-",
                                                "gorm": "-"
                                              },
                                              "default": "environments.meshery.io/v1beta1",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "name": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "name",
                                                "yaml": "name"
                                              },
                                              "x-order": 3,
                                              "type": "string",
                                              "maxLength": 100,
                                              "description": "Environment name"
                                            },
                                            "description": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "description",
                                                "yaml": "description"
                                              },
                                              "x-order": 4,
                                              "type": "string",
                                              "maxLength": 1000,
                                              "description": "Environment description"
                                            },
                                            "organization_id": {
                                              "x-go-name": "OrganizationID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "organization_id",
                                                "yaml": "organization_id"
                                              },
                                              "x-order": 5,
                                              "description": "Environment organization ID",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "owner": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "owner",
                                                "yaml": "owner"
                                              },
                                              "x-order": 6,
                                              "description": "Environment owner",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "created_at": {
                                              "x-order": 7,
                                              "description": "Timestamp when the resource was created.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "CreatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "created_at",
                                                "yaml": "created_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "metadata": {
                                              "description": "Additional metadata associated with the environment.",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "metadata",
                                                "yaml": "metadata"
                                              },
                                              "x-order": 8,
                                              "x-go-type": "core.Map",
                                              "x-go-type-skip-optional-pointer": true,
                                              "type": "object"
                                            },
                                            "updated_at": {
                                              "x-order": 9,
                                              "description": "Timestamp when the resource was updated.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "UpdatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "updated_at",
                                                "yaml": "updated_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "deleted_at": {
                                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                              "nullable": true,
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "deleted_at",
                                                "yaml": "deleted_at"
                                              },
                                              "x-go-type": "core.NullTime",
                                              "x-go-import": "database/sql",
                                              "x-order": 10,
                                              "x-go-type-import": {
                                                "name": "meshcore",
                                                "path": "github.com/meshery/schemas/models/core"
                                              },
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-type-skip-optional-pointer": true
                                            }
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "-",
                                          "yaml": "environments",
                                          "gorm": "-"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "x-order": 13
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 14,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "db": "-",
                                          "gorm": "-"
                                        },
                                        "default": "connections.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      }
                                    }
                                  },
                                  "registrantId": {
                                    "description": "ID of the registrant.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrantId",
                                      "gorm": "column:connection_id"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "categoryId": {
                                    "description": "ID of the category.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "-",
                                      "yaml": "-",
                                      "gorm": "categoryID"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "category": {
                                    "description": "Category the model belongs to.",
                                    "x-order": 9,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "category",
                                      "gorm": "foreignKey:CategoryId;references:ID"
                                    },
                                    "x-go-type": "categoryv1beta1.CategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/category",
                                      "name": "categoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "object",
                                    "additionalProperties": false,
                                    "required": [
                                      "id",
                                      "name",
                                      "metadata"
                                    ],
                                    "properties": {
                                      "id": {
                                        "x-order": 1,
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name",
                                          "gorm": "name"
                                        },
                                        "default": "Uncategorized",
                                        "description": "The category of the model that determines the main grouping.",
                                        "helperText": "Select a model category",
                                        "enum": [
                                          "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"
                                        ],
                                        "x-order": 2
                                      },
                                      "metadata": {
                                        "description": "Additional metadata associated with the category.",
                                        "type": "object",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "metadata,omitempty",
                                          "json": "metadata,omitempty",
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 3
                                      }
                                    }
                                  },
                                  "subCategory": {
                                    "description": "Sub-category the model belongs to.",
                                    "x-order": 10,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "subCategory",
                                      "json": "subCategory"
                                    },
                                    "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                      "name": "subcategoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "string",
                                    "title": "SubCategory",
                                    "default": "Uncategorized",
                                    "enum": [
                                      "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"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 100
                                  },
                                  "metadata": {
                                    "type": "object",
                                    "description": "Metadata containing additional information associated with the model.",
                                    "required": [
                                      "svgWhite",
                                      "svgColor"
                                    ],
                                    "properties": {
                                      "capabilities": {
                                        "type": "array",
                                        "description": "Capabilities associated with the model",
                                        "items": {
                                          "x-go-type": "capabilityv1alpha1.Capability",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                            "name": "capabilityv1alpha1"
                                          },
                                          "$id": "https://schemas.meshery.io/capability.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "required": [
                                            "description",
                                            "schemaVersion",
                                            "version",
                                            "displayName",
                                            "kind",
                                            "type",
                                            "subType",
                                            "entityState",
                                            "key",
                                            "status"
                                          ],
                                          "x-oapi-codegen-extra-tags": {
                                            "gorm": "type:bytes;serializer:json"
                                          },
                                          "properties": {
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the capability definition conforms.",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "version": {
                                              "description": "Version of the capability definition.",
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            },
                                            "displayName": {
                                              "description": "Name of the capability in human-readible format.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "description": {
                                              "type": "string",
                                              "description": "A written representation of the purpose and characteristics of the capability.",
                                              "maxLength": 5000
                                            },
                                            "kind": {
                                              "description": "Top-level categorization of the capability",
                                              "additionalProperties": false,
                                              "anyOf": [
                                                {
                                                  "const": "action",
                                                  "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                },
                                                {
                                                  "const": "mutate",
                                                  "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                },
                                                {
                                                  "const": "view",
                                                  "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                },
                                                {
                                                  "const": "interaction",
                                                  "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                }
                                              ],
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "type": {
                                              "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "subType": {
                                              "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "key": {
                                              "description": "Key that backs the capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "entityState": {
                                              "description": "State of the entity in which the capability is applicable.",
                                              "type": "array",
                                              "items": {
                                                "type": "string",
                                                "enum": [
                                                  "declaration",
                                                  "instance"
                                                ],
                                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                              }
                                            },
                                            "status": {
                                              "type": "string",
                                              "description": "Status of the capability",
                                              "default": "enabled",
                                              "enum": [
                                                "enabled",
                                                "disabled"
                                              ]
                                            },
                                            "metadata": {
                                              "type": "object",
                                              "description": "Metadata contains additional information associated with the capability. Extension point.",
                                              "additionalProperties": true
                                            }
                                          },
                                          "default": [
                                            {
                                              "description": "Configure the visual styles for the component",
                                              "displayName": "Styling",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Change the shape of the component",
                                              "displayName": "Change Shape",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "shape",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Drag and Drop a component into a parent component in graph view",
                                              "displayName": "Compound Drag And Drop",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "interaction",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "compoundDnd",
                                              "type": "graph",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Add text to nodes body",
                                              "displayName": "Body Text",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "body-text",
                                              "type": "style",
                                              "version": "0.7.0"
                                            }
                                          ]
                                        },
                                        "x-order": 1
                                      },
                                      "isAnnotation": {
                                        "type": "boolean",
                                        "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "isAnnotation"
                                        },
                                        "x-order": 2,
                                        "default": false
                                      },
                                      "primaryColor": {
                                        "type": "string",
                                        "description": "Primary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00b39f",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "primaryColor"
                                        },
                                        "x-order": 3
                                      },
                                      "secondaryColor": {
                                        "type": "string",
                                        "description": "Secondary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00D3A9",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "secondaryColor"
                                        },
                                        "x-order": 4
                                      },
                                      "svgWhite": {
                                        "type": "string",
                                        "description": "SVG representation of the model in white color.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgWhite"
                                        },
                                        "x-order": 5,
                                        "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>"
                                      },
                                      "svgColor": {
                                        "type": "string",
                                        "description": "SVG representation of the model in colored format.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgColor"
                                        },
                                        "x-order": 6,
                                        "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>"
                                      },
                                      "svgComplete": {
                                        "type": "string",
                                        "description": "SVG representation of the complete model.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgComplete"
                                        },
                                        "x-order": 7
                                      },
                                      "shape": {
                                        "description": "Visual shape used to render the model's entities in design canvases.",
                                        "x-order": 8,
                                        "type": "string",
                                        "enum": [
                                          "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"
                                        ]
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "json": "metadata"
                                    },
                                    "x-order": 11,
                                    "additionalProperties": true
                                  },
                                  "model": {
                                    "description": "Registrant-defined data associated with the model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-order": 12,
                                    "type": "object",
                                    "required": [
                                      "version"
                                    ],
                                    "properties": {
                                      "version": {
                                        "description": "Version of the model as defined by the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "version"
                                        },
                                        "x-order": 1,
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      }
                                    }
                                  },
                                  "relationships": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationships"
                                    },
                                    "description": "The relationships of the model."
                                  },
                                  "components": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "components"
                                    },
                                    "description": "The components of the model."
                                  },
                                  "componentsCount": {
                                    "type": "integer",
                                    "description": "Number of components associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "componentsCount",
                                      "gorm": "-"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "relationshipsCount": {
                                    "type": "integer",
                                    "description": "Number of relationships associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationshipsCount"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the model was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "created_at",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the model was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updated_at",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "schemaVersion",
                                  "displayName",
                                  "status",
                                  "subCategory",
                                  "model",
                                  "name",
                                  "description",
                                  "version",
                                  "registrant",
                                  "category",
                                  "categoryId",
                                  "registrantId",
                                  "relationshipsCount",
                                  "componentsCount",
                                  "components",
                                  "relationships"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this model's name and version.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The models matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}/models/{model}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryModelsByCategoryAndModel",
        "summary": "Get registered models in a category by model name",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "When `true`, the model name is matched greedily (substring match).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "components",
            "in": "query",
            "description": "When `true`, embeds the model's component definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "relationships",
            "in": "query",
            "description": "When `true`, embeds the model's relationship definitions in the response.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching models in the category.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered models.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "models": {
                          "type": "array",
                          "items": {
                            "description": "A registered model, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/model.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema used for the definition.",
                                    "x-order": 2,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "schemaVersion"
                                    },
                                    "default": "models.meshery.io/v1beta2",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "description": "Version of the model definition.",
                                    "type": "string",
                                    "x-order": 3,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "version"
                                    },
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "The unique name for the model within the scope of a registrant.",
                                    "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                    "pattern": "^[a-z0-9-]+$",
                                    "examples": [
                                      "cert-manager"
                                    ],
                                    "x-order": 4,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "name"
                                    },
                                    "default": "untitled-model"
                                  },
                                  "displayName": {
                                    "description": "Human-readable name for the model.",
                                    "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "type": "string",
                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                    "examples": [
                                      "Cert Manager"
                                    ],
                                    "x-order": 5,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "displayName"
                                    },
                                    "default": "Untitled Model"
                                  },
                                  "description": {
                                    "type": "string",
                                    "default": "A new Meshery model.",
                                    "description": "Description of the model.",
                                    "minLength": 1,
                                    "maxLength": 1000,
                                    "x-order": 6,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "description,omitempty"
                                    }
                                  },
                                  "status": {
                                    "type": "string",
                                    "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate"
                                    ],
                                    "x-order": 7,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "status"
                                    },
                                    "default": "enabled"
                                  },
                                  "registrant": {
                                    "description": "Connection identifying the entity that registered this model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrant",
                                      "gorm": "foreignKey:RegistrantId;references:ID"
                                    },
                                    "x-order": 8,
                                    "x-go-type": "connectionv1beta1.Connection",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                      "name": "connectionv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/connection.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "name",
                                      "type",
                                      "subType",
                                      "kind",
                                      "status"
                                    ],
                                    "properties": {
                                      "id": {
                                        "description": "Connection ID",
                                        "x-order": 1,
                                        "x-go-name": "ID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "id",
                                          "yaml": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "name",
                                          "yaml": "name"
                                        },
                                        "x-order": 2,
                                        "type": "string",
                                        "description": "Connection Name"
                                      },
                                      "credentialId": {
                                        "x-go-name": "CredentialID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "credential_id",
                                          "yaml": "credentialId"
                                        },
                                        "x-order": 3,
                                        "description": "Associated Credential ID",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "type": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "type",
                                          "yaml": "type"
                                        },
                                        "x-order": 4,
                                        "type": "string",
                                        "description": "Connection Type (platform, telemetry, collaboration)"
                                      },
                                      "subType": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "sub_type",
                                          "yaml": "subType"
                                        },
                                        "x-order": 5,
                                        "type": "string",
                                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                      },
                                      "kind": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "kind",
                                          "yaml": "kind"
                                        },
                                        "x-order": 6,
                                        "type": "string",
                                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                      },
                                      "metadata": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 7,
                                        "x-go-type": "core.Map",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "type": "object",
                                        "description": "Additional connection metadata"
                                      },
                                      "status": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "status",
                                          "yaml": "status"
                                        },
                                        "x-order": 8,
                                        "description": "Connection Status",
                                        "type": "string",
                                        "enum": [
                                          "discovered",
                                          "registered",
                                          "connected",
                                          "ignored",
                                          "maintenance",
                                          "disconnected",
                                          "deleted",
                                          "not found"
                                        ]
                                      },
                                      "user_id": {
                                        "x-go-name": "UserID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "owner",
                                          "yaml": "user_id"
                                        },
                                        "x-order": 9,
                                        "description": "User ID who owns this connection",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "created_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-order": 10,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-order": 11,
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "deleted_at": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "deleted_at",
                                          "yaml": "deleted_at"
                                        },
                                        "x-order": 12,
                                        "description": "SQL null Timestamp to handle null values of time.",
                                        "x-go-type": "meshcore.NullTime",
                                        "x-go-type-import": {
                                          "name": "meshcore",
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "environments": {
                                        "type": "array",
                                        "description": "Associated environments for this connection",
                                        "items": {
                                          "x-go-type": "*environmentv1beta1.Environment",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                            "name": "environmentv1beta1"
                                          },
                                          "$id": "https://schemas.meshery.io/environment.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "title": "Environment",
                                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "example": {
                                            "id": "00000000-0000-0000-0000-000000000000",
                                            "schemaVersion": "environments.meshery.io/v1beta1",
                                            "name": "Production Environment",
                                            "description": "Connections and credentials for the production cluster.",
                                            "organization_id": "00000000-0000-0000-0000-000000000000",
                                            "owner": "00000000-0000-0000-0000-000000000000",
                                            "created_at": "0001-01-01T00:00:00Z",
                                            "metadata": {},
                                            "updated_at": "0001-01-01T00:00:00Z",
                                            "deleted_at": null
                                          },
                                          "required": [
                                            "id",
                                            "schemaVersion",
                                            "name",
                                            "description",
                                            "organization_id"
                                          ],
                                          "properties": {
                                            "id": {
                                              "description": "ID",
                                              "x-order": 1,
                                              "x-go-name": "ID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "id",
                                                "yaml": "id"
                                              },
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the environment conforms.",
                                              "x-order": 2,
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "schemaVersion",
                                                "db": "-",
                                                "gorm": "-"
                                              },
                                              "default": "environments.meshery.io/v1beta1",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "name": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "name",
                                                "yaml": "name"
                                              },
                                              "x-order": 3,
                                              "type": "string",
                                              "maxLength": 100,
                                              "description": "Environment name"
                                            },
                                            "description": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "description",
                                                "yaml": "description"
                                              },
                                              "x-order": 4,
                                              "type": "string",
                                              "maxLength": 1000,
                                              "description": "Environment description"
                                            },
                                            "organization_id": {
                                              "x-go-name": "OrganizationID",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "organization_id",
                                                "yaml": "organization_id"
                                              },
                                              "x-order": 5,
                                              "description": "Environment organization ID",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "owner": {
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "owner",
                                                "yaml": "owner"
                                              },
                                              "x-order": 6,
                                              "description": "Environment owner",
                                              "type": "string",
                                              "format": "uuid",
                                              "x-go-type": "uuid.UUID",
                                              "x-go-type-import": {
                                                "path": "github.com/gofrs/uuid"
                                              }
                                            },
                                            "created_at": {
                                              "x-order": 7,
                                              "description": "Timestamp when the resource was created.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "CreatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "created_at",
                                                "yaml": "created_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "metadata": {
                                              "description": "Additional metadata associated with the environment.",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "metadata",
                                                "yaml": "metadata"
                                              },
                                              "x-order": 8,
                                              "x-go-type": "core.Map",
                                              "x-go-type-skip-optional-pointer": true,
                                              "type": "object"
                                            },
                                            "updated_at": {
                                              "x-order": 9,
                                              "description": "Timestamp when the resource was updated.",
                                              "x-go-type": "time.Time",
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-name": "UpdatedAt",
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "updated_at",
                                                "yaml": "updated_at"
                                              },
                                              "x-go-type-skip-optional-pointer": true
                                            },
                                            "deleted_at": {
                                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                              "nullable": true,
                                              "x-oapi-codegen-extra-tags": {
                                                "db": "deleted_at",
                                                "yaml": "deleted_at"
                                              },
                                              "x-go-type": "core.NullTime",
                                              "x-go-import": "database/sql",
                                              "x-order": 10,
                                              "x-go-type-import": {
                                                "name": "meshcore",
                                                "path": "github.com/meshery/schemas/models/core"
                                              },
                                              "type": "string",
                                              "format": "date-time",
                                              "x-go-type-skip-optional-pointer": true
                                            }
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "-",
                                          "yaml": "environments",
                                          "gorm": "-"
                                        },
                                        "x-go-type-skip-optional-pointer": true,
                                        "x-order": 13
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 14,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "db": "-",
                                          "gorm": "-"
                                        },
                                        "default": "connections.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      }
                                    }
                                  },
                                  "registrantId": {
                                    "description": "ID of the registrant.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "registrantId",
                                      "gorm": "column:connection_id"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "categoryId": {
                                    "description": "ID of the category.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "-",
                                      "yaml": "-",
                                      "gorm": "categoryID"
                                    },
                                    "x-order": 8,
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "category": {
                                    "description": "Category the model belongs to.",
                                    "x-order": 9,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "category",
                                      "gorm": "foreignKey:CategoryId;references:ID"
                                    },
                                    "x-go-type": "categoryv1beta1.CategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/category",
                                      "name": "categoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "object",
                                    "additionalProperties": false,
                                    "required": [
                                      "id",
                                      "name",
                                      "metadata"
                                    ],
                                    "properties": {
                                      "id": {
                                        "x-order": 1,
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name",
                                          "gorm": "name"
                                        },
                                        "default": "Uncategorized",
                                        "description": "The category of the model that determines the main grouping.",
                                        "helperText": "Select a model category",
                                        "enum": [
                                          "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"
                                        ],
                                        "x-order": 2
                                      },
                                      "metadata": {
                                        "description": "Additional metadata associated with the category.",
                                        "type": "object",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "metadata,omitempty",
                                          "json": "metadata,omitempty",
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 3
                                      }
                                    }
                                  },
                                  "subCategory": {
                                    "description": "Sub-category the model belongs to.",
                                    "x-order": 10,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "subCategory",
                                      "json": "subCategory"
                                    },
                                    "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                      "name": "subcategoryv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/category.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "type": "string",
                                    "title": "SubCategory",
                                    "default": "Uncategorized",
                                    "enum": [
                                      "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"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 100
                                  },
                                  "metadata": {
                                    "type": "object",
                                    "description": "Metadata containing additional information associated with the model.",
                                    "required": [
                                      "svgWhite",
                                      "svgColor"
                                    ],
                                    "properties": {
                                      "capabilities": {
                                        "type": "array",
                                        "description": "Capabilities associated with the model",
                                        "items": {
                                          "x-go-type": "capabilityv1alpha1.Capability",
                                          "x-go-type-import": {
                                            "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                            "name": "capabilityv1alpha1"
                                          },
                                          "$id": "https://schemas.meshery.io/capability.yaml",
                                          "$schema": "http://json-schema.org/draft-07/schema#",
                                          "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                          "additionalProperties": false,
                                          "type": "object",
                                          "required": [
                                            "description",
                                            "schemaVersion",
                                            "version",
                                            "displayName",
                                            "kind",
                                            "type",
                                            "subType",
                                            "entityState",
                                            "key",
                                            "status"
                                          ],
                                          "x-oapi-codegen-extra-tags": {
                                            "gorm": "type:bytes;serializer:json"
                                          },
                                          "properties": {
                                            "schemaVersion": {
                                              "description": "Specifies the version of the schema to which the capability definition conforms.",
                                              "type": "string",
                                              "minLength": 2,
                                              "maxLength": 100,
                                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                              "example": [
                                                "v1",
                                                "v1alpha1",
                                                "v2beta3",
                                                "v1.custom-suffix",
                                                "models.meshery.io/v1beta1",
                                                "capability.meshery.io/v1alpha1"
                                              ]
                                            },
                                            "version": {
                                              "description": "Version of the capability definition.",
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            },
                                            "displayName": {
                                              "description": "Name of the capability in human-readible format.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "description": {
                                              "type": "string",
                                              "description": "A written representation of the purpose and characteristics of the capability.",
                                              "maxLength": 5000
                                            },
                                            "kind": {
                                              "description": "Top-level categorization of the capability",
                                              "additionalProperties": false,
                                              "anyOf": [
                                                {
                                                  "const": "action",
                                                  "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                },
                                                {
                                                  "const": "mutate",
                                                  "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                },
                                                {
                                                  "const": "view",
                                                  "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                },
                                                {
                                                  "const": "interaction",
                                                  "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                }
                                              ],
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "type": {
                                              "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "subType": {
                                              "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "key": {
                                              "description": "Key that backs the capability.",
                                              "type": "string",
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                            },
                                            "entityState": {
                                              "description": "State of the entity in which the capability is applicable.",
                                              "type": "array",
                                              "items": {
                                                "type": "string",
                                                "enum": [
                                                  "declaration",
                                                  "instance"
                                                ],
                                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                              }
                                            },
                                            "status": {
                                              "type": "string",
                                              "description": "Status of the capability",
                                              "default": "enabled",
                                              "enum": [
                                                "enabled",
                                                "disabled"
                                              ]
                                            },
                                            "metadata": {
                                              "type": "object",
                                              "description": "Metadata contains additional information associated with the capability. Extension point.",
                                              "additionalProperties": true
                                            }
                                          },
                                          "default": [
                                            {
                                              "description": "Configure the visual styles for the component",
                                              "displayName": "Styling",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Change the shape of the component",
                                              "displayName": "Change Shape",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "shape",
                                              "type": "style",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Drag and Drop a component into a parent component in graph view",
                                              "displayName": "Compound Drag And Drop",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "interaction",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "compoundDnd",
                                              "type": "graph",
                                              "version": "0.7.0"
                                            },
                                            {
                                              "description": "Add text to nodes body",
                                              "displayName": "Body Text",
                                              "entityState": [
                                                "declaration"
                                              ],
                                              "key": "",
                                              "kind": "mutate",
                                              "schemaVersion": "capability.meshery.io/v1beta1",
                                              "status": "enabled",
                                              "subType": "body-text",
                                              "type": "style",
                                              "version": "0.7.0"
                                            }
                                          ]
                                        },
                                        "x-order": 1
                                      },
                                      "isAnnotation": {
                                        "type": "boolean",
                                        "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "isAnnotation"
                                        },
                                        "x-order": 2,
                                        "default": false
                                      },
                                      "primaryColor": {
                                        "type": "string",
                                        "description": "Primary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00b39f",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "primaryColor"
                                        },
                                        "x-order": 3
                                      },
                                      "secondaryColor": {
                                        "type": "string",
                                        "description": "Secondary color associated with the model.",
                                        "minLength": 1,
                                        "maxLength": 50,
                                        "default": "#00D3A9",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "secondaryColor"
                                        },
                                        "x-order": 4
                                      },
                                      "svgWhite": {
                                        "type": "string",
                                        "description": "SVG representation of the model in white color.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgWhite"
                                        },
                                        "x-order": 5,
                                        "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>"
                                      },
                                      "svgColor": {
                                        "type": "string",
                                        "description": "SVG representation of the model in colored format.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgColor"
                                        },
                                        "x-order": 6,
                                        "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>"
                                      },
                                      "svgComplete": {
                                        "type": "string",
                                        "description": "SVG representation of the complete model.",
                                        "minLength": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "svgComplete"
                                        },
                                        "x-order": 7
                                      },
                                      "shape": {
                                        "description": "Visual shape used to render the model's entities in design canvases.",
                                        "x-order": 8,
                                        "type": "string",
                                        "enum": [
                                          "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"
                                        ]
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "json": "metadata"
                                    },
                                    "x-order": 11,
                                    "additionalProperties": true
                                  },
                                  "model": {
                                    "description": "Registrant-defined data associated with the model.",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-order": 12,
                                    "type": "object",
                                    "required": [
                                      "version"
                                    ],
                                    "properties": {
                                      "version": {
                                        "description": "Version of the model as defined by the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "version"
                                        },
                                        "x-order": 1,
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      }
                                    }
                                  },
                                  "relationships": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationships"
                                    },
                                    "description": "The relationships of the model."
                                  },
                                  "components": {
                                    "type": "array",
                                    "x-go-type": "interface{}",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "components"
                                    },
                                    "description": "The components of the model."
                                  },
                                  "componentsCount": {
                                    "type": "integer",
                                    "description": "Number of components associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "componentsCount",
                                      "gorm": "-"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "relationshipsCount": {
                                    "type": "integer",
                                    "description": "Number of relationships associated with the model.",
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-",
                                      "json": "relationshipsCount"
                                    },
                                    "default": 0,
                                    "minimum": 0
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the model was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "created_at",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the model was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updated_at",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "schemaVersion",
                                  "displayName",
                                  "status",
                                  "subCategory",
                                  "model",
                                  "name",
                                  "description",
                                  "version",
                                  "registrant",
                                  "category",
                                  "categoryId",
                                  "registrantId",
                                  "relationshipsCount",
                                  "componentsCount",
                                  "components",
                                  "relationships"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this model's name and version.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The models matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}/models/{model}/components": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByCategoryAndModel",
        "summary": "List components of a model in a category",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of components.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}/models/{model}/components/{name}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByCategoryAndModelAndName",
        "summary": "Get components of a model in a category by component name",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "model",
            "in": "path",
            "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "name",
            "in": "path",
            "description": "Kind of the component (e.g. `Deployment`).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching components.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}/components": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByCategory",
        "summary": "List components in a category",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of components in the category.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/categories/{category}/components/{name}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByCategoryAndName",
        "summary": "Get components in a category by component name",
        "security": [],
        "parameters": [
          {
            "name": "category",
            "in": "path",
            "description": "Name of the category.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "name",
            "in": "path",
            "description": "Kind of the component (e.g. `Deployment`).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching components.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/components": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponents",
        "summary": "List registered components",
        "description": "Returns a paginated list of components registered in the capabilities registry. Each entry carries a `duplicates` count of other registered entries sharing the same kind, version, and model.",
        "security": [],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of registered components.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      },
      "post": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "registerRegistryComponent",
        "summary": "Register a component definition",
        "description": "Registrant-facing channel through which components are registered into the capabilities registry (used by Meshery Adapters and other registrants during capability registration).",
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "description": "Envelope with which a registrant submits an entity definition for registration into the capabilities registry.",
                "required": [
                  "connection",
                  "entityType",
                  "entity"
                ],
                "properties": {
                  "connection": {
                    "description": "Connection identifying the registrant.",
                    "$id": "https://schemas.meshery.io/connection.yaml",
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "additionalProperties": false,
                    "type": "object",
                    "required": [
                      "id",
                      "schemaVersion",
                      "name",
                      "type",
                      "subType",
                      "kind",
                      "status"
                    ],
                    "properties": {
                      "id": {
                        "description": "Connection ID",
                        "x-order": 1,
                        "x-go-name": "ID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "id"
                        },
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "name": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "name"
                        },
                        "x-order": 2,
                        "type": "string",
                        "description": "Connection Name",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "description": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "description",
                          "json": "description"
                        },
                        "x-order": 3,
                        "type": "string",
                        "description": "Human-readable description of the connection and its purpose.",
                        "maxLength": 1000
                      },
                      "url": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "url",
                          "json": "url"
                        },
                        "x-order": 4,
                        "type": "string",
                        "format": "uri",
                        "description": "URL of the remote resource this connection points to (e.g. the Helm repository URL, the Kubernetes API server endpoint, the Grafana instance URL).",
                        "maxLength": 2048
                      },
                      "credentialId": {
                        "x-go-name": "CredentialID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "credential_id",
                          "json": "credentialId"
                        },
                        "x-order": 5,
                        "description": "Associated Credential ID",
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "type": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "type",
                          "json": "type",
                          "yaml": "type"
                        },
                        "x-go-name": "ConnectionType",
                        "x-order": 6,
                        "type": "string",
                        "description": "Connection Type (platform, telemetry, collaboration)",
                        "maxLength": 255
                      },
                      "subType": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "sub_type",
                          "json": "subType"
                        },
                        "x-order": 7,
                        "type": "string",
                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)",
                        "maxLength": 255
                      },
                      "kind": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "kind"
                        },
                        "x-order": 8,
                        "type": "string",
                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)",
                        "maxLength": 255
                      },
                      "modelReference": {
                        "x-go-type": "modelv1beta1.ModelReference",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/v1beta1/model",
                          "name": "modelv1beta1"
                        },
                        "x-order": 8,
                        "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",
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "model_reference",
                          "db": "model_reference",
                          "json": "modelReference",
                          "yaml": "modelReference"
                        },
                        "x-generate-db-helpers": true,
                        "type": "object",
                        "required": [
                          "id",
                          "name",
                          "version",
                          "displayName",
                          "model",
                          "registrant"
                        ],
                        "properties": {
                          "id": {
                            "type": "string",
                            "format": "uuid",
                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                            "x-go-type": "uuid.UUID",
                            "x-go-type-import": {
                              "path": "github.com/gofrs/uuid"
                            }
                          },
                          "name": {
                            "type": "string",
                            "description": "The unique name for the model within the scope of a registrant.",
                            "pattern": "^[a-z0-9-]+$",
                            "examples": [
                              "cert-manager"
                            ]
                          },
                          "version": {
                            "description": "Version of the model definition.",
                            "type": "string",
                            "minLength": 5,
                            "maxLength": 100,
                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                          },
                          "displayName": {
                            "type": "string",
                            "description": "Human-readable name for the model.",
                            "minLength": 1,
                            "maxLength": 100,
                            "pattern": "^[a-zA-Z0-9 ]+$",
                            "examples": [
                              "Cert Manager"
                            ]
                          },
                          "model": {
                            "type": "object",
                            "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                            "required": [
                              "version"
                            ],
                            "properties": {
                              "version": {
                                "description": "Version of the model as defined by the registrant.",
                                "x-oapi-codegen-extra-tags": {
                                  "json": "version"
                                },
                                "x-order": 1,
                                "type": "string",
                                "minLength": 5,
                                "maxLength": 100,
                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                              }
                            }
                          },
                          "registrant": {
                            "x-go-type": "RegistrantReference",
                            "x-oapi-codegen-extra-tags": {
                              "json": "registrant"
                            },
                            "type": "object",
                            "required": [
                              "kind"
                            ],
                            "properties": {
                              "kind": {
                                "type": "string",
                                "description": "Kind of the registrant.",
                                "maxLength": 255
                              }
                            }
                          }
                        }
                      },
                      "metadata": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "metadata"
                        },
                        "x-order": 9,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Additional connection metadata"
                      },
                      "credentialSchema": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "credential_schema"
                        },
                        "x-order": 9,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Schema for the credential Associated with the connection"
                      },
                      "connectionSchema": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "connection_schema"
                        },
                        "x-order": 9,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Schema for the connection"
                      },
                      "styles": {
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "type:bytes;serializer:json",
                          "db": "-",
                          "yaml": "styles",
                          "json": "styles"
                        },
                        "x-go-type": "core.ComponentStyles",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core",
                          "name": "core"
                        },
                        "x-order": 17,
                        "description": "Visualization styles for the connection, including svgColor and svgWhite used for UI representation.",
                        "type": "object",
                        "required": [
                          "shape",
                          "primaryColor",
                          "svgColor",
                          "svgWhite",
                          "svgComplete"
                        ],
                        "allOf": [
                          {
                            "type": "object",
                            "description": "Common styles for all entities",
                            "additionalProperties": true,
                            "required": [
                              "primaryColor",
                              "svgColor",
                              "svgWhite",
                              "svgComplete"
                            ],
                            "properties": {
                              "primaryColor": {
                                "type": "string",
                                "description": "Primary color of the component used for UI representation.",
                                "maxLength": 500
                              },
                              "secondaryColor": {
                                "type": "string",
                                "description": "Secondary color of the entity used for UI representation.",
                                "maxLength": 500
                              },
                              "svgWhite": {
                                "type": "string",
                                "description": "White SVG of the entity used for UI representation on dark background.",
                                "maxLength": 500
                              },
                              "svgColor": {
                                "type": "string",
                                "description": "Colored SVG of the entity used for UI representation on light background.",
                                "maxLength": 500
                              },
                              "svgComplete": {
                                "type": "string",
                                "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                "maxLength": 500
                              },
                              "color": {
                                "type": "string",
                                "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 500
                              },
                              "textOpacity": {
                                "type": "number",
                                "description": "The opacity of the label text, including its outline.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "fontFamily": {
                                "type": "string",
                                "description": "A comma-separated list of font names to use on the label text.",
                                "maxLength": 500
                              },
                              "fontSize": {
                                "type": "string",
                                "description": "The size of the label text.",
                                "maxLength": 500
                              },
                              "fontStyle": {
                                "type": "string",
                                "description": "A CSS font style to be applied to the label text.",
                                "maxLength": 500
                              },
                              "fontWeight": {
                                "type": "string",
                                "description": "A CSS font weight to be applied to the label text.",
                                "maxLength": 500
                              },
                              "textTransform": {
                                "type": "string",
                                "description": "A transformation to apply to the label text",
                                "enum": [
                                  "none",
                                  "uppercase",
                                  "lowercase"
                                ]
                              },
                              "opacity": {
                                "type": "number",
                                "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.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "zIndex": {
                                "type": "integer",
                                "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.",
                                "minimum": 0
                              },
                              "label": {
                                "type": "string",
                                "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                "maxLength": 500
                              },
                              "animation": {
                                "type": "object",
                                "description": "The animation to apply to the element. example ripple,bounce,etc"
                              }
                            }
                          },
                          {
                            "type": "object",
                            "properties": {
                              "shape": {
                                "type": "string",
                                "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)",
                                "enum": [
                                  "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"
                                ]
                              },
                              "position": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "x",
                                  "y"
                                ],
                                "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.",
                                "properties": {
                                  "x": {
                                    "type": "number",
                                    "description": "The x-coordinate of the node.",
                                    "minimum": -1000000,
                                    "maximum": 1000000,
                                    "x-go-type": "float64"
                                  },
                                  "y": {
                                    "type": "number",
                                    "description": "The y-coordinate of the node.",
                                    "minimum": -1000000,
                                    "maximum": 1000000,
                                    "x-go-type": "float64"
                                  }
                                }
                              },
                              "bodyText": {
                                "type": "string",
                                "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                "maxLength": 500
                              },
                              "bodyTextWrap": {
                                "type": "string",
                                "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                "enum": [
                                  "none",
                                  "wrap",
                                  "ellipsis"
                                ]
                              },
                              "bodyTextMaxWidth": {
                                "type": "string",
                                "description": "The maximum width for wrapping text in the node.",
                                "maxLength": 50
                              },
                              "bodyTextOpacity": {
                                "type": "number",
                                "description": "The opacity of the node's body text, including its outline.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "bodyTextBackgroundColor": {
                                "type": "string",
                                "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "bodyTextFontSize": {
                                "type": "number",
                                "description": "The size of the node's body text.",
                                "minimum": 0
                              },
                              "bodyTextColor": {
                                "type": "string",
                                "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "bodyTextFontWeight": {
                                "type": "string",
                                "description": "A CSS font weight to be applied to the node's body text.",
                                "maxLength": 50
                              },
                              "bodyTextHorizontalAlign": {
                                "type": "string",
                                "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                "maxLength": 50
                              },
                              "bodyTextDecoration": {
                                "type": "string",
                                "description": "A CSS text decoration to be applied to the node's body text.",
                                "maxLength": 100
                              },
                              "bodyTextVerticalAlign": {
                                "type": "string",
                                "description": "A CSS vertical alignment to be applied to the node's body text.",
                                "maxLength": 50
                              },
                              "width": {
                                "type": "number",
                                "description": "The width of the node's body or the width of an edge's line.",
                                "minimum": 0
                              },
                              "height": {
                                "type": "number",
                                "description": "The height of the node's body",
                                "minimum": 0
                              },
                              "backgroundImage": {
                                "type": "string",
                                "format": "uri",
                                "description": "The URL that points to the image to show in the node.",
                                "maxLength": 2048
                              },
                              "backgroundColor": {
                                "type": "string",
                                "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "backgroundBlacken": {
                                "type": "number",
                                "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                "maximum": 1,
                                "minimum": -1
                              },
                              "backgroundOpacity": {
                                "type": "number",
                                "description": "The opacity level of the node's background colour",
                                "maximum": 1,
                                "minimum": 0
                              },
                              "backgroundPositionX": {
                                "type": "string",
                                "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundPositionY": {
                                "type": "string",
                                "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundOffsetX": {
                                "type": "string",
                                "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundOffsetY": {
                                "type": "string",
                                "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundFit": {
                                "type": "string",
                                "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                "enum": [
                                  "none",
                                  "contain",
                                  "cover"
                                ]
                              },
                              "backgroundClip": {
                                "type": "string",
                                "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                "enum": [
                                  "none",
                                  "node",
                                  "node-border"
                                ]
                              },
                              "backgroundWidthRelativeTo": {
                                "type": "string",
                                "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                "enum": [
                                  "none",
                                  "inner",
                                  "outer"
                                ]
                              },
                              "backgroundHeightRelativeTo": {
                                "type": "string",
                                "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                "enum": [
                                  "none",
                                  "inner",
                                  "outer"
                                ]
                              },
                              "borderWidth": {
                                "type": "number",
                                "description": "The size of the node's border.",
                                "minimum": 0
                              },
                              "borderStyle": {
                                "type": "string",
                                "description": "The style of the node's border",
                                "enum": [
                                  "solid",
                                  "dotted",
                                  "dashed",
                                  "double"
                                ]
                              },
                              "borderColor": {
                                "type": "string",
                                "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "borderOpacity": {
                                "type": "number",
                                "description": "The opacity of the node's border",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "padding": {
                                "type": "number",
                                "description": "The amount of padding around all sides of the node.",
                                "minimum": 0
                              },
                              "textHalign": {
                                "type": "string",
                                "description": "The horizontal alignment of a node's label",
                                "enum": [
                                  "left",
                                  "center",
                                  "right"
                                ]
                              },
                              "textValign": {
                                "type": "string",
                                "description": "The vertical alignment of a node's label",
                                "enum": [
                                  "top",
                                  "center",
                                  "bottom"
                                ]
                              },
                              "ghost": {
                                "type": "string",
                                "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                "default": "no",
                                "enum": [
                                  "yes",
                                  "no"
                                ]
                              },
                              "activeBgColor": {
                                "type": "string",
                                "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.",
                                "maxLength": 100
                              },
                              "activeBgOpacity": {
                                "type": "string",
                                "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                "maxLength": 50
                              },
                              "activeBgSize": {
                                "type": "string",
                                "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                "maxLength": 50
                              },
                              "selectionBoxColor": {
                                "type": "string",
                                "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.",
                                "maxLength": 100
                              },
                              "selectionBoxBorderWidth": {
                                "type": "number",
                                "description": "The size of the border on the selection box. Selector needs to be *core*",
                                "minimum": 0
                              },
                              "selectionBoxOpacity": {
                                "type": "number",
                                "description": "The opacity of the selection box. Selector needs to be *core*",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "outsideTextureBgColor": {
                                "type": "string",
                                "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.",
                                "maxLength": 100
                              },
                              "outsideTextureBgOpacity": {
                                "type": "number",
                                "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "shapePolygonPoints": {
                                "type": "string",
                                "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 )",
                                "maxLength": 2000
                              },
                              "menuBackgroundColor": {
                                "type": "string",
                                "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "menuBackgroundOpacity": {
                                "type": "number",
                                "description": "The opacity of the background of the component menu.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "menuForgroundColor": {
                                "type": "string",
                                "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              }
                            }
                          }
                        ]
                      },
                      "status": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "status"
                        },
                        "x-order": 10,
                        "description": "Connection Status",
                        "type": "string",
                        "enum": [
                          "discovered",
                          "registered",
                          "connected",
                          "ignored",
                          "maintenance",
                          "disconnected",
                          "deleted",
                          "not found"
                        ]
                      },
                      "transitionMap": {
                        "type": "object",
                        "description": "Map describing the connection state machine. Each key is a current connection status and its value is the list of states the connection may transition to from that status, along with a description of each transition.",
                        "additionalProperties": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "description": "A single permissible state transition for a connection, describing the next reachable state and the meaning of that transition.",
                            "required": [
                              "nextState"
                            ],
                            "properties": {
                              "nextState": {
                                "description": "The connection state reachable from the current state.",
                                "x-go-name": "NextState",
                                "x-order": 1,
                                "type": "string",
                                "enum": [
                                  "discovered",
                                  "registered",
                                  "connected",
                                  "ignored",
                                  "maintenance",
                                  "disconnected",
                                  "deleted",
                                  "not found"
                                ]
                              },
                              "description": {
                                "type": "string",
                                "description": "Human-readable explanation of when or why this transition occurs.",
                                "maxLength": 1000,
                                "x-oapi-codegen-extra-tags": {
                                  "json": "description,omitempty"
                                },
                                "x-order": 2
                              }
                            }
                          }
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "type:bytes;serializer:json",
                          "db": "-",
                          "json": "transitionMap,omitempty"
                        },
                        "x-order": 18
                      },
                      "owner": {
                        "x-go-name": "Owner",
                        "x-oapi-codegen-extra-tags": {
                          "db": "owner",
                          "json": "owner"
                        },
                        "x-order": 11,
                        "description": "User ID who owns this connection",
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "createdAt": {
                        "description": "Timestamp when the connection was created.",
                        "x-oapi-codegen-extra-tags": {
                          "db": "created_at",
                          "json": "createdAt"
                        },
                        "x-order": 12,
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "updatedAt": {
                        "description": "Timestamp when the connection was last updated.",
                        "x-oapi-codegen-extra-tags": {
                          "db": "updated_at",
                          "json": "updatedAt"
                        },
                        "x-order": 13,
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "deletedAt": {
                        "description": "Timestamp when the connection was soft-deleted, if applicable.",
                        "x-oapi-codegen-extra-tags": {
                          "db": "deleted_at",
                          "json": "deletedAt"
                        },
                        "x-order": 14,
                        "x-go-type": "meshcore.NullTime",
                        "x-go-type-import": {
                          "name": "meshcore",
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "type": "string",
                        "format": "date-time",
                        "nullable": true,
                        "x-go-type-skip-optional-pointer": true
                      },
                      "environments": {
                        "type": "array",
                        "description": "Associated environments for this connection",
                        "items": {
                          "x-go-type": "*environmentv1beta3.Environment",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta3/environment",
                            "name": "environmentv1beta3"
                          },
                          "$id": "https://schemas.meshery.io/environment.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "title": "Environment",
                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                          "additionalProperties": false,
                          "type": "object",
                          "example": {
                            "id": "00000000-0000-0000-0000-000000000000",
                            "schemaVersion": "environments.meshery.io/v1beta3",
                            "name": "Production Environment",
                            "description": "Connections and credentials for the production cluster.",
                            "organizationId": "00000000-0000-0000-0000-000000000000",
                            "owner": "00000000-0000-0000-0000-000000000000",
                            "createdAt": "0001-01-01T00:00:00Z",
                            "metadata": {},
                            "updatedAt": "0001-01-01T00:00:00Z",
                            "deletedAt": null
                          },
                          "required": [
                            "id",
                            "schemaVersion",
                            "name",
                            "description",
                            "organizationId"
                          ],
                          "properties": {
                            "id": {
                              "description": "ID",
                              "x-order": 1,
                              "x-go-name": "ID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "id",
                                "json": "id"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "schemaVersion": {
                              "description": "Specifies the version of the schema to which the environment conforms.",
                              "x-order": 2,
                              "x-oapi-codegen-extra-tags": {
                                "json": "schemaVersion",
                                "db": "-",
                                "gorm": "-"
                              },
                              "default": "environments.meshery.io/v1beta3",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            },
                            "name": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "name",
                                "json": "name"
                              },
                              "x-order": 3,
                              "type": "string",
                              "maxLength": 100,
                              "description": "Environment name"
                            },
                            "description": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "description",
                                "json": "description"
                              },
                              "x-order": 4,
                              "type": "string",
                              "maxLength": 1000,
                              "description": "Environment description"
                            },
                            "organizationId": {
                              "x-go-name": "OrganizationID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "organization_id",
                                "json": "organizationId"
                              },
                              "x-order": 5,
                              "description": "Environment organization ID",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "owner": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "owner",
                                "json": "owner"
                              },
                              "x-order": 6,
                              "description": "Environment owner",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "createdAt": {
                              "description": "Timestamp when the environment was created.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "created_at",
                                "yaml": "created_at",
                                "json": "createdAt"
                              },
                              "x-order": 7,
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "CreatedAt",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "metadata": {
                              "description": "Additional metadata associated with the environment.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "metadata",
                                "json": "metadata"
                              },
                              "x-order": 8,
                              "x-go-type": "core.Map",
                              "x-go-type-skip-optional-pointer": true,
                              "type": "object"
                            },
                            "updatedAt": {
                              "description": "Timestamp when the environment was last updated.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "updated_at",
                                "yaml": "updated_at",
                                "json": "updatedAt"
                              },
                              "x-order": 9,
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "UpdatedAt",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "deletedAt": {
                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                              "nullable": true,
                              "x-oapi-codegen-extra-tags": {
                                "db": "deleted_at",
                                "json": "deletedAt"
                              },
                              "x-go-type": "core.NullTime",
                              "x-go-import": "database/sql",
                              "x-order": 10,
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            }
                          }
                        },
                        "x-oapi-codegen-extra-tags": {
                          "db": "-",
                          "gorm": "-"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "x-order": 15
                      },
                      "schemaVersion": {
                        "description": "Specifies the version of the schema used for the definition.",
                        "x-order": 16,
                        "x-oapi-codegen-extra-tags": {
                          "db": "-",
                          "gorm": "-"
                        },
                        "default": "connections.meshery.io/v1beta3",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 100,
                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                        "example": [
                          "v1",
                          "v1alpha1",
                          "v2beta3",
                          "v1.custom-suffix",
                          "models.meshery.io/v1beta1",
                          "capability.meshery.io/v1alpha1"
                        ]
                      }
                    }
                  },
                  "entityType": {
                    "type": "string",
                    "description": "Type of the entity being registered (e.g. `component`, `relationship`).",
                    "maxLength": 255
                  },
                  "entity": {
                    "type": "string",
                    "format": "byte",
                    "description": "Base64-encoded JSON definition of the entity being registered."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Component registration processed."
          },
          "400": {
            "description": "Bad request."
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/components/{name}": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryComponentsByName",
        "summary": "Get registered components by name",
        "security": [],
        "parameters": [
          {
            "name": "name",
            "in": "path",
            "description": "Kind of the component (e.g. `Deployment`).",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "When `true`, the component name is matched greedily (substring match).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "apiVersion",
            "in": "query",
            "description": "Filter components by their API version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "trim",
            "in": "query",
            "description": "When `true`, omits large schema payloads from the returned definitions.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "annotations",
            "in": "query",
            "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of matching components.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered components.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "components": {
                          "type": "array",
                          "items": {
                            "description": "A registered component, annotated with its duplicate count.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/component.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                                "additionalProperties": false,
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                    "x-order": 1,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "id",
                                      "json": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "x-order": 2,
                                    "description": "Specifies the version of the schema to which the component definition conforms.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "json": "schemaVersion"
                                    },
                                    "default": "components.meshery.io/v1beta3",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "x-order": 3,
                                    "description": "Version of the component definition.",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "version",
                                      "json": "version"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "x-order": 4,
                                    "description": "Name of the component in human-readable format.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "displayName",
                                      "json": "displayName"
                                    },
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the component.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "description",
                                      "json": "description"
                                    },
                                    "maxLength": 5000
                                  },
                                  "format": {
                                    "x-order": 6,
                                    "type": "string",
                                    "enum": [
                                      "JSON",
                                      "CUE"
                                    ],
                                    "default": "JSON",
                                    "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "format",
                                      "json": "format"
                                    }
                                  },
                                  "model": {
                                    "x-go-type": "*modelv1beta1.ModelDefinition",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 7,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "foreignKey:ModelID;references:ID",
                                      "json": "model",
                                      "yaml": "model"
                                    },
                                    "$id": "https://schemas.meshery.io/model.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "properties": {
                                      "id": {
                                        "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                        "x-order": 1,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema used for the definition.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "json": "schemaVersion"
                                        },
                                        "default": "models.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "x-order": 3,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "version",
                                          "json": "version"
                                        },
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ],
                                        "x-order": 4,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "name",
                                          "json": "name"
                                        },
                                        "default": "untitled-model"
                                      },
                                      "displayName": {
                                        "description": "Human-readable name for the model.",
                                        "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "type": "string",
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ],
                                        "x-order": 5,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "displayName",
                                          "json": "displayName"
                                        },
                                        "default": "Untitled Model"
                                      },
                                      "description": {
                                        "type": "string",
                                        "default": "A new Meshery model.",
                                        "description": "Description of the model.",
                                        "minLength": 1,
                                        "maxLength": 1000,
                                        "x-order": 6,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "description,omitempty",
                                          "json": "description,omitempty"
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                        "enum": [
                                          "ignored",
                                          "enabled",
                                          "duplicate"
                                        ],
                                        "x-order": 7,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "status",
                                          "json": "status"
                                        },
                                        "default": "enabled"
                                      },
                                      "registrant": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "registrant",
                                          "json": "registrant",
                                          "gorm": "foreignKey:RegistrantId;references:ID"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "connectionv1beta1.Connection",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                          "name": "connectionv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/connection.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "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",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "type",
                                          "subType",
                                          "kind",
                                          "status"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "Connection ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 2,
                                            "type": "string",
                                            "description": "Connection Name"
                                          },
                                          "credentialId": {
                                            "x-go-name": "CredentialID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "credential_id",
                                              "yaml": "credentialId"
                                            },
                                            "x-order": 3,
                                            "description": "Associated Credential ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "type": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "type",
                                              "yaml": "type"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "description": "Connection Type (platform, telemetry, collaboration)"
                                          },
                                          "subType": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "sub_type",
                                              "yaml": "subType"
                                            },
                                            "x-order": 5,
                                            "type": "string",
                                            "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                          },
                                          "kind": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "kind",
                                              "yaml": "kind"
                                            },
                                            "x-order": 6,
                                            "type": "string",
                                            "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                          },
                                          "metadata": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 7,
                                            "x-go-type": "core.Map",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object",
                                            "description": "Additional connection metadata"
                                          },
                                          "status": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "status",
                                              "yaml": "status"
                                            },
                                            "x-order": 8,
                                            "description": "Connection Status",
                                            "type": "string",
                                            "enum": [
                                              "discovered",
                                              "registered",
                                              "connected",
                                              "ignored",
                                              "maintenance",
                                              "disconnected",
                                              "deleted",
                                              "not found"
                                            ]
                                          },
                                          "user_id": {
                                            "x-go-name": "UserID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "user_id"
                                            },
                                            "x-order": 9,
                                            "description": "User ID who owns this connection",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-order": 10,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "updated_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-order": 11,
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-order": 12,
                                            "description": "SQL null Timestamp to handle null values of time.",
                                            "x-go-type": "meshcore.NullTime",
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "environments": {
                                            "type": "array",
                                            "description": "Associated environments for this connection",
                                            "items": {
                                              "x-go-type": "*environmentv1beta1.Environment",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                                "name": "environmentv1beta1"
                                              },
                                              "$id": "https://schemas.meshery.io/environment.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "title": "Environment",
                                              "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "example": {
                                                "id": "00000000-0000-0000-0000-000000000000",
                                                "schemaVersion": "environments.meshery.io/v1beta1",
                                                "name": "Production Environment",
                                                "description": "Connections and credentials for the production cluster.",
                                                "organization_id": "00000000-0000-0000-0000-000000000000",
                                                "owner": "00000000-0000-0000-0000-000000000000",
                                                "created_at": "0001-01-01T00:00:00Z",
                                                "metadata": {},
                                                "updated_at": "0001-01-01T00:00:00Z",
                                                "deleted_at": null
                                              },
                                              "required": [
                                                "id",
                                                "schemaVersion",
                                                "name",
                                                "description",
                                                "organization_id"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "description": "ID",
                                                  "x-order": 1,
                                                  "x-go-name": "ID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "id",
                                                    "yaml": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the environment conforms.",
                                                  "x-order": 2,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "schemaVersion",
                                                    "db": "-",
                                                    "gorm": "-"
                                                  },
                                                  "default": "environments.meshery.io/v1beta1",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "name": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "name",
                                                    "yaml": "name"
                                                  },
                                                  "x-order": 3,
                                                  "type": "string",
                                                  "maxLength": 100,
                                                  "description": "Environment name"
                                                },
                                                "description": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "description",
                                                    "yaml": "description"
                                                  },
                                                  "x-order": 4,
                                                  "type": "string",
                                                  "maxLength": 1000,
                                                  "description": "Environment description"
                                                },
                                                "organization_id": {
                                                  "x-go-name": "OrganizationID",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "organization_id",
                                                    "yaml": "organization_id"
                                                  },
                                                  "x-order": 5,
                                                  "description": "Environment organization ID",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "owner": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "owner",
                                                    "yaml": "owner"
                                                  },
                                                  "x-order": 6,
                                                  "description": "Environment owner",
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "created_at": {
                                                  "x-order": 7,
                                                  "description": "Timestamp when the resource was created.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "CreatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "created_at",
                                                    "yaml": "created_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "metadata": {
                                                  "description": "Additional metadata associated with the environment.",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "metadata",
                                                    "yaml": "metadata"
                                                  },
                                                  "x-order": 8,
                                                  "x-go-type": "core.Map",
                                                  "x-go-type-skip-optional-pointer": true,
                                                  "type": "object"
                                                },
                                                "updated_at": {
                                                  "x-order": 9,
                                                  "description": "Timestamp when the resource was updated.",
                                                  "x-go-type": "time.Time",
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-name": "UpdatedAt",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "updated_at",
                                                    "yaml": "updated_at"
                                                  },
                                                  "x-go-type-skip-optional-pointer": true
                                                },
                                                "deleted_at": {
                                                  "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                                  "nullable": true,
                                                  "x-oapi-codegen-extra-tags": {
                                                    "db": "deleted_at",
                                                    "yaml": "deleted_at"
                                                  },
                                                  "x-go-type": "core.NullTime",
                                                  "x-go-import": "database/sql",
                                                  "x-order": 10,
                                                  "x-go-type-import": {
                                                    "name": "meshcore",
                                                    "path": "github.com/meshery/schemas/models/core"
                                                  },
                                                  "type": "string",
                                                  "format": "date-time",
                                                  "x-go-type-skip-optional-pointer": true
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "-",
                                              "yaml": "environments",
                                              "gorm": "-"
                                            },
                                            "x-go-type-skip-optional-pointer": true,
                                            "x-order": 13
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema used for the definition.",
                                            "x-order": 14,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "connections.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          }
                                        }
                                      },
                                      "registrantId": {
                                        "description": "ID of the registrant.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "connection_id",
                                          "json": "connection_id",
                                          "gorm": "column:connection_id"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "categoryId": {
                                        "description": "ID of the category.",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "-",
                                          "json": "-",
                                          "gorm": "categoryID"
                                        },
                                        "x-order": 8,
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "category": {
                                        "x-order": 9,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "category",
                                          "json": "category",
                                          "gorm": "foreignKey:CategoryId;references:ID"
                                        },
                                        "x-go-type": "categoryv1beta1.CategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/category",
                                          "name": "categoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "description": "Category of the model.",
                                        "required": [
                                          "id",
                                          "name",
                                          "metadata"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-order": 1,
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "name",
                                              "json": "name",
                                              "gorm": "name"
                                            },
                                            "default": "Uncategorized",
                                            "description": "The category of the model that determines the main grouping.",
                                            "helperText": "Select a model category",
                                            "enum": [
                                              "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"
                                            ],
                                            "x-order": 2
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the category.",
                                            "type": "object",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "metadata,omitempty",
                                              "json": "metadata,omitempty",
                                              "gorm": "type:bytes;serializer:json"
                                            },
                                            "x-order": 3
                                          }
                                        }
                                      },
                                      "subCategory": {
                                        "x-order": 10,
                                        "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                          "name": "subcategoryv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/category.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "type": "string",
                                        "title": "SubCategory",
                                        "description": "Sub category of the model determines the secondary grouping.",
                                        "default": "Uncategorized",
                                        "enum": [
                                          "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"
                                        ],
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "subCategory",
                                          "json": "subCategory"
                                        }
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata containing additional information associated with the model.",
                                        "required": [
                                          "svgWhite",
                                          "svgColor"
                                        ],
                                        "properties": {
                                          "capabilities": {
                                            "type": "array",
                                            "description": "Capabilities associated with the model",
                                            "items": {
                                              "x-go-type": "capabilityv1alpha1.Capability",
                                              "x-go-type-import": {
                                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                                "name": "capabilityv1alpha1"
                                              },
                                              "$id": "https://schemas.meshery.io/capability.yaml",
                                              "$schema": "http://json-schema.org/draft-07/schema#",
                                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                              "additionalProperties": false,
                                              "type": "object",
                                              "required": [
                                                "description",
                                                "schemaVersion",
                                                "version",
                                                "displayName",
                                                "kind",
                                                "type",
                                                "subType",
                                                "entityState",
                                                "key",
                                                "status"
                                              ],
                                              "x-oapi-codegen-extra-tags": {
                                                "gorm": "type:bytes;serializer:json"
                                              },
                                              "properties": {
                                                "schemaVersion": {
                                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                                  "type": "string",
                                                  "minLength": 2,
                                                  "maxLength": 100,
                                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                                  "example": [
                                                    "v1",
                                                    "v1alpha1",
                                                    "v2beta3",
                                                    "v1.custom-suffix",
                                                    "models.meshery.io/v1beta1",
                                                    "capability.meshery.io/v1alpha1"
                                                  ]
                                                },
                                                "version": {
                                                  "description": "Version of the capability definition.",
                                                  "type": "string",
                                                  "minLength": 5,
                                                  "maxLength": 100,
                                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                },
                                                "displayName": {
                                                  "description": "Name of the capability in human-readible format.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "description": {
                                                  "type": "string",
                                                  "description": "A written representation of the purpose and characteristics of the capability.",
                                                  "maxLength": 5000
                                                },
                                                "kind": {
                                                  "description": "Top-level categorization of the capability",
                                                  "additionalProperties": false,
                                                  "anyOf": [
                                                    {
                                                      "const": "action",
                                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                                    },
                                                    {
                                                      "const": "mutate",
                                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                                    },
                                                    {
                                                      "const": "view",
                                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                                    },
                                                    {
                                                      "const": "interaction",
                                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                                    }
                                                  ],
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "type": {
                                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "subType": {
                                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "key": {
                                                  "description": "Key that backs the capability.",
                                                  "type": "string",
                                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                                },
                                                "entityState": {
                                                  "description": "State of the entity in which the capability is applicable.",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string",
                                                    "enum": [
                                                      "declaration",
                                                      "instance"
                                                    ],
                                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                                  }
                                                },
                                                "status": {
                                                  "type": "string",
                                                  "description": "Status of the capability",
                                                  "default": "enabled",
                                                  "enum": [
                                                    "enabled",
                                                    "disabled"
                                                  ]
                                                },
                                                "metadata": {
                                                  "type": "object",
                                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                                  "additionalProperties": true
                                                }
                                              },
                                              "default": [
                                                {
                                                  "description": "Configure the visual styles for the component",
                                                  "displayName": "Styling",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Change the shape of the component",
                                                  "displayName": "Change Shape",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "shape",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Drag and Drop a component into a parent component in graph view",
                                                  "displayName": "Compound Drag And Drop",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "interaction",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "compoundDnd",
                                                  "type": "graph",
                                                  "version": "0.7.0"
                                                },
                                                {
                                                  "description": "Add text to nodes body",
                                                  "displayName": "Body Text",
                                                  "entityState": [
                                                    "declaration"
                                                  ],
                                                  "key": "",
                                                  "kind": "mutate",
                                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                                  "status": "enabled",
                                                  "subType": "body-text",
                                                  "type": "style",
                                                  "version": "0.7.0"
                                                }
                                              ]
                                            },
                                            "x-order": 1
                                          },
                                          "isAnnotation": {
                                            "type": "boolean",
                                            "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "isAnnotation",
                                              "json": "isAnnotation"
                                            },
                                            "x-order": 2,
                                            "default": false
                                          },
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00b39f",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "primaryColor",
                                              "json": "primaryColor"
                                            },
                                            "x-order": 3
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color associated with the model.",
                                            "minLength": 1,
                                            "maxLength": 50,
                                            "default": "#00D3A9",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "secondaryColor",
                                              "json": "secondaryColor"
                                            },
                                            "x-order": 4
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "SVG representation of the model in white color.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgWhite",
                                              "json": "svgWhite"
                                            },
                                            "x-order": 5,
                                            "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>"
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "SVG representation of the model in colored format.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgColor",
                                              "json": "svgColor"
                                            },
                                            "x-order": 6,
                                            "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>"
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "SVG representation of the complete model.",
                                            "minLength": 1,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "svgComplete",
                                              "json": "svgComplete"
                                            },
                                            "x-order": 7
                                          },
                                          "shape": {
                                            "x-order": 8,
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json",
                                          "json": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 11,
                                        "additionalProperties": true
                                      },
                                      "model": {
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "x-order": 12,
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "relationships": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships",
                                          "yaml": "relationships"
                                        },
                                        "description": "The relationships of the model."
                                      },
                                      "components": {
                                        "type": "array",
                                        "x-go-type": "interface{}",
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "components",
                                          "yaml": "components"
                                        },
                                        "description": "The components of the model."
                                      },
                                      "componentsCount": {
                                        "type": "integer",
                                        "description": "Number of components associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "components_count",
                                          "yaml": "components_count",
                                          "gorm": "-"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "relationshipsCount": {
                                        "type": "integer",
                                        "description": "Number of relationships associated with the model.",
                                        "x-order": 13,
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "-",
                                          "json": "relationships_count",
                                          "yaml": "relationships_count"
                                        },
                                        "default": 0,
                                        "minimum": 0
                                      },
                                      "created_at": {
                                        "x-order": 14,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "updated_at": {
                                        "x-order": 15,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "displayName",
                                      "status",
                                      "subCategory",
                                      "model",
                                      "name",
                                      "description",
                                      "version",
                                      "registrant",
                                      "category",
                                      "categoryId",
                                      "registrantId",
                                      "relationshipsCount",
                                      "componentsCount",
                                      "components",
                                      "relationships"
                                    ]
                                  },
                                  "modelReference": {
                                    "x-go-type": "modelv1beta1.ModelReference",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/model",
                                      "name": "modelv1beta1"
                                    },
                                    "x-order": 8,
                                    "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",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "-"
                                    },
                                    "x-generate-db-helpers": true,
                                    "type": "object",
                                    "required": [
                                      "id",
                                      "name",
                                      "version",
                                      "displayName",
                                      "model",
                                      "registrant"
                                    ],
                                    "properties": {
                                      "id": {
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "name": {
                                        "type": "string",
                                        "description": "The unique name for the model within the scope of a registrant.",
                                        "pattern": "^[a-z0-9-]+$",
                                        "examples": [
                                          "cert-manager"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the model definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "type": "string",
                                        "description": "Human-readable name for the model.",
                                        "minLength": 1,
                                        "maxLength": 100,
                                        "pattern": "^[a-zA-Z0-9 ]+$",
                                        "examples": [
                                          "Cert Manager"
                                        ]
                                      },
                                      "model": {
                                        "type": "object",
                                        "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                        "required": [
                                          "version"
                                        ],
                                        "properties": {
                                          "version": {
                                            "description": "Version of the model as defined by the registrant.",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "version"
                                            },
                                            "x-order": 1,
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          }
                                        }
                                      },
                                      "registrant": {
                                        "x-go-type": "RegistrantReference",
                                        "x-oapi-codegen-extra-tags": {
                                          "json": "registrant"
                                        },
                                        "type": "object",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "kind": {
                                            "type": "string",
                                            "description": "Kind of the registrant.",
                                            "maxLength": 255
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "modelId": {
                                    "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.",
                                    "x-go-name": "ModelID",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                      "db": "model_id",
                                      "yaml": "-",
                                      "json": "-"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "styles": {
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "styles",
                                      "json": "styles"
                                    },
                                    "x-go-type": "core.ComponentStyles",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core",
                                      "name": "core"
                                    },
                                    "x-order": 8,
                                    "type": "object",
                                    "description": "Visualization styles for a component",
                                    "required": [
                                      "shape",
                                      "primaryColor",
                                      "svgColor",
                                      "svgWhite",
                                      "svgComplete"
                                    ],
                                    "allOf": [
                                      {
                                        "type": "object",
                                        "description": "Common styles for all entities",
                                        "additionalProperties": true,
                                        "required": [
                                          "primaryColor",
                                          "svgColor",
                                          "svgWhite",
                                          "svgComplete"
                                        ],
                                        "properties": {
                                          "primaryColor": {
                                            "type": "string",
                                            "description": "Primary color of the component used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "secondaryColor": {
                                            "type": "string",
                                            "description": "Secondary color of the entity used for UI representation.",
                                            "maxLength": 500
                                          },
                                          "svgWhite": {
                                            "type": "string",
                                            "description": "White SVG of the entity used for UI representation on dark background.",
                                            "maxLength": 500
                                          },
                                          "svgColor": {
                                            "type": "string",
                                            "description": "Colored SVG of the entity used for UI representation on light background.",
                                            "maxLength": 500
                                          },
                                          "svgComplete": {
                                            "type": "string",
                                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                            "maxLength": 500
                                          },
                                          "color": {
                                            "type": "string",
                                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 500
                                          },
                                          "textOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the label text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "fontFamily": {
                                            "type": "string",
                                            "description": "A comma-separated list of font names to use on the label text.",
                                            "maxLength": 500
                                          },
                                          "fontSize": {
                                            "type": "string",
                                            "description": "The size of the label text.",
                                            "maxLength": 500
                                          },
                                          "fontStyle": {
                                            "type": "string",
                                            "description": "A CSS font style to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "fontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the label text.",
                                            "maxLength": 500
                                          },
                                          "textTransform": {
                                            "type": "string",
                                            "description": "A transformation to apply to the label text",
                                            "enum": [
                                              "none",
                                              "uppercase",
                                              "lowercase"
                                            ]
                                          },
                                          "opacity": {
                                            "type": "number",
                                            "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.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "zIndex": {
                                            "type": "integer",
                                            "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.",
                                            "minimum": 0
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "animation": {
                                            "type": "object",
                                            "description": "The animation to apply to the element. example ripple,bounce,etc"
                                          }
                                        }
                                      },
                                      {
                                        "type": "object",
                                        "properties": {
                                          "shape": {
                                            "type": "string",
                                            "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)",
                                            "enum": [
                                              "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"
                                            ]
                                          },
                                          "position": {
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "x",
                                              "y"
                                            ],
                                            "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.",
                                            "properties": {
                                              "x": {
                                                "type": "number",
                                                "description": "The x-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              },
                                              "y": {
                                                "type": "number",
                                                "description": "The y-coordinate of the node.",
                                                "minimum": -1000000,
                                                "maximum": 1000000,
                                                "x-go-type": "float64"
                                              }
                                            }
                                          },
                                          "bodyText": {
                                            "type": "string",
                                            "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                            "maxLength": 500
                                          },
                                          "bodyTextWrap": {
                                            "type": "string",
                                            "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                            "enum": [
                                              "none",
                                              "wrap",
                                              "ellipsis"
                                            ]
                                          },
                                          "bodyTextMaxWidth": {
                                            "type": "string",
                                            "description": "The maximum width for wrapping text in the node.",
                                            "maxLength": 50
                                          },
                                          "bodyTextOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's body text, including its outline.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "bodyTextBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontSize": {
                                            "type": "number",
                                            "description": "The size of the node's body text.",
                                            "minimum": 0
                                          },
                                          "bodyTextColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "bodyTextFontWeight": {
                                            "type": "string",
                                            "description": "A CSS font weight to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextHorizontalAlign": {
                                            "type": "string",
                                            "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "bodyTextDecoration": {
                                            "type": "string",
                                            "description": "A CSS text decoration to be applied to the node's body text.",
                                            "maxLength": 100
                                          },
                                          "bodyTextVerticalAlign": {
                                            "type": "string",
                                            "description": "A CSS vertical alignment to be applied to the node's body text.",
                                            "maxLength": 50
                                          },
                                          "width": {
                                            "type": "number",
                                            "description": "The width of the node's body or the width of an edge's line.",
                                            "minimum": 0
                                          },
                                          "height": {
                                            "type": "number",
                                            "description": "The height of the node's body",
                                            "minimum": 0
                                          },
                                          "backgroundImage": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "The URL that points to the image to show in the node.",
                                            "maxLength": 2048
                                          },
                                          "backgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "backgroundBlacken": {
                                            "type": "number",
                                            "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                            "maximum": 1,
                                            "minimum": -1
                                          },
                                          "backgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity level of the node's background colour",
                                            "maximum": 1,
                                            "minimum": 0
                                          },
                                          "backgroundPositionX": {
                                            "type": "string",
                                            "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundPositionY": {
                                            "type": "string",
                                            "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetX": {
                                            "type": "string",
                                            "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundOffsetY": {
                                            "type": "string",
                                            "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                            "maxLength": 50
                                          },
                                          "backgroundFit": {
                                            "type": "string",
                                            "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                            "enum": [
                                              "none",
                                              "contain",
                                              "cover"
                                            ]
                                          },
                                          "backgroundClip": {
                                            "type": "string",
                                            "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                            "enum": [
                                              "none",
                                              "node",
                                              "node-border"
                                            ]
                                          },
                                          "backgroundWidthRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "backgroundHeightRelativeTo": {
                                            "type": "string",
                                            "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                            "enum": [
                                              "none",
                                              "inner",
                                              "outer"
                                            ]
                                          },
                                          "borderWidth": {
                                            "type": "number",
                                            "description": "The size of the node's border.",
                                            "minimum": 0
                                          },
                                          "borderStyle": {
                                            "type": "string",
                                            "description": "The style of the node's border",
                                            "enum": [
                                              "solid",
                                              "dotted",
                                              "dashed",
                                              "double"
                                            ]
                                          },
                                          "borderColor": {
                                            "type": "string",
                                            "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "borderOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the node's border",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "padding": {
                                            "type": "number",
                                            "description": "The amount of padding around all sides of the node.",
                                            "minimum": 0
                                          },
                                          "textHalign": {
                                            "type": "string",
                                            "description": "The horizontal alignment of a node's label",
                                            "enum": [
                                              "left",
                                              "center",
                                              "right"
                                            ]
                                          },
                                          "textValign": {
                                            "type": "string",
                                            "description": "The vertical alignment of a node's label",
                                            "enum": [
                                              "top",
                                              "center",
                                              "bottom"
                                            ]
                                          },
                                          "ghost": {
                                            "type": "string",
                                            "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                            "default": "no",
                                            "enum": [
                                              "yes",
                                              "no"
                                            ]
                                          },
                                          "activeBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "activeBgOpacity": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "activeBgSize": {
                                            "type": "string",
                                            "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                            "maxLength": 50
                                          },
                                          "selectionBoxColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "selectionBoxBorderWidth": {
                                            "type": "number",
                                            "description": "The size of the border on the selection box. Selector needs to be *core*",
                                            "minimum": 0
                                          },
                                          "selectionBoxOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the selection box. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "outsideTextureBgColor": {
                                            "type": "string",
                                            "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.",
                                            "maxLength": 100
                                          },
                                          "outsideTextureBgOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "shapePolygonPoints": {
                                            "type": "string",
                                            "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 )",
                                            "maxLength": 2000
                                          },
                                          "menuBackgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          },
                                          "menuBackgroundOpacity": {
                                            "type": "number",
                                            "description": "The opacity of the background of the component menu.",
                                            "minimum": 0,
                                            "maximum": 1
                                          },
                                          "menuForgroundColor": {
                                            "type": "string",
                                            "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                            "maxLength": 100
                                          }
                                        }
                                      }
                                    ]
                                  },
                                  "capabilities": {
                                    "x-order": 9,
                                    "type": "array",
                                    "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.",
                                    "items": {
                                      "x-go-type": "capabilityv1beta1.Capability",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                        "name": "capabilityv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/capability.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "required": [
                                        "description",
                                        "schemaVersion",
                                        "version",
                                        "displayName",
                                        "kind",
                                        "type",
                                        "subType",
                                        "entityState",
                                        "key",
                                        "status"
                                      ],
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "properties": {
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the capability definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "description": "Name of the capability in human-readible format.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "description": {
                                          "type": "string",
                                          "description": "A written representation of the purpose and characteristics of the capability.",
                                          "maxLength": 5000
                                        },
                                        "kind": {
                                          "description": "Top-level categorization of the capability",
                                          "additionalProperties": false,
                                          "anyOf": [
                                            {
                                              "const": "action",
                                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                            },
                                            {
                                              "const": "mutate",
                                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                            },
                                            {
                                              "const": "view",
                                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                            },
                                            {
                                              "const": "interaction",
                                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                            }
                                          ],
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "type": {
                                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "subType": {
                                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "key": {
                                          "description": "Key that backs the capability.",
                                          "type": "string",
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                        },
                                        "entityState": {
                                          "description": "State of the entity in which the capability is applicable.",
                                          "type": "array",
                                          "items": {
                                            "type": "string",
                                            "enum": [
                                              "declaration",
                                              "instance"
                                            ],
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                          }
                                        },
                                        "status": {
                                          "type": "string",
                                          "description": "Status of the capability",
                                          "default": "enabled",
                                          "enum": [
                                            "enabled",
                                            "disabled"
                                          ]
                                        },
                                        "metadata": {
                                          "type": "object",
                                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                                          "additionalProperties": true
                                        }
                                      },
                                      "default": [
                                        {
                                          "description": "Configure the visual styles for the component",
                                          "displayName": "Styling",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Change the shape of the component",
                                          "displayName": "Change Shape",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "shape",
                                          "type": "style",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Drag and Drop a component into a parent component in graph view",
                                          "displayName": "Compound Drag And Drop",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "interaction",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "compoundDnd",
                                          "type": "graph",
                                          "version": "0.7.0"
                                        },
                                        {
                                          "description": "Add text to nodes body",
                                          "displayName": "Body Text",
                                          "entityState": [
                                            "declaration"
                                          ],
                                          "key": "",
                                          "kind": "mutate",
                                          "schemaVersion": "capability.meshery.io/v1beta1",
                                          "status": "enabled",
                                          "subType": "body-text",
                                          "type": "style",
                                          "version": "0.7.0"
                                        }
                                      ]
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json",
                                      "yaml": "capabilities",
                                      "json": "capabilities"
                                    },
                                    "default": [
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Performance Test",
                                        "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                        "kind": "action",
                                        "type": "operator",
                                        "subType": "perf-test",
                                        "key": "",
                                        "entityState": [
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Workload Configuration",
                                        "description": "Configure the workload specific setting of a component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "config",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Labels and Annotations Configuration",
                                        "description": "Configure Labels And Annotations for the component",
                                        "kind": "mutate",
                                        "type": "configuration",
                                        "subType": "labels-and-annotations",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Relationships",
                                        "description": "View relationships for the component",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "relationship",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Json Schema",
                                        "description": "View Component Definition ",
                                        "kind": "view",
                                        "type": "configuration",
                                        "subType": "definition",
                                        "key": "",
                                        "entityState": [
                                          "declaration",
                                          "instance"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Styling",
                                        "description": "Configure the visual styles for the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Change Shape",
                                        "description": "Change the shape of the component",
                                        "kind": "mutate",
                                        "type": "style",
                                        "subType": "shape",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      },
                                      {
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "version": "0.7.0",
                                        "displayName": "Compound Drag And Drop",
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "kind": "interaction",
                                        "type": "graph",
                                        "subType": "compoundDnd",
                                        "key": "",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "status": "enabled",
                                        "metadata": null
                                      }
                                    ]
                                  },
                                  "status": {
                                    "x-order": 10,
                                    "type": "string",
                                    "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                    "default": "enabled",
                                    "enum": [
                                      "ignored",
                                      "enabled",
                                      "duplicate",
                                      "resolved",
                                      "open"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "status",
                                      "json": "status"
                                    }
                                  },
                                  "metadata": {
                                    "x-order": 11,
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the component.",
                                    "required": [
                                      "genealogy",
                                      "isAnnotation",
                                      "isNamespaced",
                                      "published",
                                      "instanceDetails",
                                      "configurationUISchema"
                                    ],
                                    "properties": {
                                      "genealogy": {
                                        "x-order": 1,
                                        "type": "string",
                                        "description": "Genealogy represents the various representational states of the component.",
                                        "maxLength": 1000
                                      },
                                      "isAnnotation": {
                                        "x-order": 2,
                                        "type": "boolean",
                                        "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.",
                                        "default": false
                                      },
                                      "isNamespaced": {
                                        "x-order": 3,
                                        "type": "boolean",
                                        "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                      },
                                      "published": {
                                        "x-order": 4,
                                        "type": "boolean",
                                        "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."
                                      },
                                      "instanceDetails": {
                                        "x-order": 5,
                                        "type": "object",
                                        "description": "InstanceDetails contains information about the instance of the component."
                                      },
                                      "configurationUISchema": {
                                        "x-order": 6,
                                        "type": "string",
                                        "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/ .",
                                        "maxLength": 20000
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "additionalProperties": true
                                  },
                                  "configuration": {
                                    "x-order": 12,
                                    "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "type": "object",
                                    "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    }
                                  },
                                  "component": {
                                    "x-order": 13,
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "x-go-type": "Component",
                                    "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                                    "type": "object",
                                    "properties": {
                                      "version": {
                                        "type": "string",
                                        "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                        "x-order": 1,
                                        "maxLength": 500
                                      },
                                      "kind": {
                                        "type": "string",
                                        "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                        "x-order": 2,
                                        "maxLength": 255
                                      },
                                      "schema": {
                                        "type": "string",
                                        "description": "JSON schema of the object as defined by the registrant.",
                                        "x-order": 3,
                                        "maxLength": 500
                                      }
                                    },
                                    "required": [
                                      "version",
                                      "kind",
                                      "schema"
                                    ]
                                  },
                                  "createdAt": {
                                    "description": "Timestamp when the component was created.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "createdAt",
                                      "json": "createdAt"
                                    },
                                    "x-order": 14,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updatedAt": {
                                    "description": "Timestamp when the component was last updated.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updatedAt",
                                      "json": "updatedAt"
                                    },
                                    "x-order": 15,
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deletedAt": {
                                    "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "json": "deletedAt,omitempty",
                                      "yaml": "deletedAt,omitempty"
                                    },
                                    "x-order": 16,
                                    "x-go-type": "NullTime",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                },
                                "required": [
                                  "id",
                                  "displayName",
                                  "description",
                                  "schemaVersion",
                                  "format",
                                  "version",
                                  "configuration",
                                  "metadata",
                                  "model",
                                  "modelReference",
                                  "component",
                                  "createdAt",
                                  "updatedAt"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "duplicates": {
                                    "type": "integer",
                                    "description": "Number of other registered entries sharing this component's kind, version, and model.",
                                    "minimum": 0
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The components matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/relationships": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryRelationships",
        "summary": "List registered relationships",
        "security": [],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Filter by model version.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of registered relationships.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registered relationships.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "relationships": {
                          "type": "array",
                          "items": {
                            "openapi": "3.0.0",
                            "info": {
                              "title": "Relationship Core Schema",
                              "description": "Core schema definitions for Relationship and Selector in Meshery.",
                              "version": "v1alpha3",
                              "contact": {
                                "name": "Meshery Maintainers",
                                "email": "maintainers@meshery.io",
                                "url": "https://meshery.io"
                              },
                              "license": {
                                "name": "Apache 2.0",
                                "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
                              }
                            },
                            "paths": {},
                            "components": {
                              "schemas": {
                                "MutatorRef": {
                                  "type": "array",
                                  "description": "JSON ref to value from where patch should be applied.",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                  }
                                },
                                "MutatedRef": {
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                  }
                                },
                                "RelationshipDefinitionSelectorsPatchStrategy": {
                                  "type": "string",
                                  "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                  "enum": [
                                    "merge",
                                    "strategic",
                                    "add",
                                    "remove",
                                    "copy",
                                    "move",
                                    "test"
                                  ]
                                },
                                "RelationshipDefinition_Selectors_Patch": {
                                  "type": "object",
                                  "description": "Patch configuration for the selector",
                                  "properties": {
                                    "patchStrategy": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patchStrategy,omitempty",
                                        "json": "patchStrategy,omitempty"
                                      },
                                      "type": "string",
                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                      "enum": [
                                        "merge",
                                        "strategic",
                                        "add",
                                        "remove",
                                        "copy",
                                        "move",
                                        "test"
                                      ]
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "MatchSelectorItem": {
                                  "type": "object",
                                  "description": "Match selector item for binding between nodes",
                                  "required": [
                                    "kind"
                                  ],
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "MatchSelector": {
                                  "type": "object",
                                  "description": "Match configuration for selector",
                                  "properties": {
                                    "refs": {
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "refs,omitempty",
                                        "json": "refs,omitempty"
                                      }
                                    },
                                    "from": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from,omitempty",
                                        "json": "from,omitempty"
                                      }
                                    },
                                    "to": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to,omitempty",
                                        "json": "to,omitempty"
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match,omitempty",
                                    "json": "match,omitempty"
                                  }
                                },
                                "SelectorItem": {
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "Selector": {
                                  "type": "object",
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "required": [
                                    "from",
                                    "to"
                                  ],
                                  "properties": {
                                    "from": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from",
                                        "json": "from"
                                      }
                                    },
                                    "to": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to",
                                        "json": "to"
                                      }
                                    }
                                  }
                                },
                                "SelectorSetItem": {
                                  "type": "object",
                                  "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                  "required": [
                                    "allow"
                                  ],
                                  "properties": {
                                    "allow": {
                                      "description": "Selectors used to define relationships which are allowed.",
                                      "x-go-type": "Selector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "allow",
                                        "json": "allow"
                                      },
                                      "type": "object",
                                      "required": [
                                        "from",
                                        "to"
                                      ],
                                      "properties": {
                                        "from": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from",
                                            "json": "from"
                                          }
                                        },
                                        "to": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to",
                                            "json": "to"
                                          }
                                        }
                                      }
                                    },
                                    "deny": {
                                      "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                      "x-go-type": "Selector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "deny,omitempty",
                                        "json": "deny,omitempty"
                                      },
                                      "type": "object",
                                      "required": [
                                        "from",
                                        "to"
                                      ],
                                      "properties": {
                                        "from": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from",
                                            "json": "from"
                                          }
                                        },
                                        "to": {
                                          "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "SelectorItem",
                                            "type": "object",
                                            "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "match": {
                                                "x-go-type": "MatchSelector",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match,omitempty",
                                                  "json": "match,omitempty"
                                                },
                                                "type": "object",
                                                "description": "Match configuration for selector",
                                                "properties": {
                                                  "refs": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "refs,omitempty",
                                                      "json": "refs,omitempty"
                                                    }
                                                  },
                                                  "from": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "from,omitempty",
                                                      "json": "from,omitempty"
                                                    }
                                                  },
                                                  "to": {
                                                    "type": "array",
                                                    "items": {
                                                      "x-go-type": "MatchSelectorItem",
                                                      "type": "object",
                                                      "description": "Match selector item for binding between nodes",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "id",
                                                            "json": "id"
                                                          },
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "kind": {
                                                          "type": "string",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "kind",
                                                            "json": "kind"
                                                          }
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "to,omitempty",
                                                      "json": "to,omitempty"
                                                    }
                                                  }
                                                }
                                              },
                                              "match_strategy_matrix": {
                                                "description": "Match strategy matrix for the selector",
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "match_strategy_matrix",
                                                  "json": "match_strategy_matrix"
                                                }
                                              },
                                              "model": {
                                                "x-go-type": "modelv1beta1.ModelReference",
                                                "x-go-type-import": {
                                                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                  "name": "modelv1beta1"
                                                },
                                                "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "model",
                                                  "json": "model,omitempty"
                                                },
                                                "x-generate-db-helpers": true,
                                                "type": "object",
                                                "required": [
                                                  "id",
                                                  "name",
                                                  "version",
                                                  "displayName",
                                                  "model",
                                                  "registrant"
                                                ],
                                                "properties": {
                                                  "id": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                    "x-go-type": "uuid.UUID",
                                                    "x-go-type-import": {
                                                      "path": "github.com/gofrs/uuid"
                                                    }
                                                  },
                                                  "name": {
                                                    "type": "string",
                                                    "description": "The unique name for the model within the scope of a registrant.",
                                                    "pattern": "^[a-z0-9-]+$",
                                                    "examples": [
                                                      "cert-manager"
                                                    ]
                                                  },
                                                  "version": {
                                                    "description": "Version of the model definition.",
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  },
                                                  "displayName": {
                                                    "type": "string",
                                                    "description": "Human-readable name for the model.",
                                                    "minLength": 1,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-zA-Z0-9 ]+$",
                                                    "examples": [
                                                      "Cert Manager"
                                                    ]
                                                  },
                                                  "model": {
                                                    "type": "object",
                                                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                    "required": [
                                                      "version"
                                                    ],
                                                    "properties": {
                                                      "version": {
                                                        "description": "Version of the model as defined by the registrant.",
                                                        "x-oapi-codegen-extra-tags": {
                                                          "json": "version"
                                                        },
                                                        "x-order": 1,
                                                        "type": "string",
                                                        "minLength": 5,
                                                        "maxLength": 100,
                                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                      }
                                                    }
                                                  },
                                                  "registrant": {
                                                    "x-go-type": "RegistrantReference",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "registrant"
                                                    },
                                                    "type": "object",
                                                    "required": [
                                                      "kind"
                                                    ],
                                                    "properties": {
                                                      "kind": {
                                                        "type": "string",
                                                        "description": "Kind of the registrant.",
                                                        "maxLength": 255
                                                      }
                                                    }
                                                  }
                                                }
                                              },
                                              "patch": {
                                                "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patch",
                                                  "json": "patch"
                                                },
                                                "type": "object",
                                                "description": "Patch configuration for the selector",
                                                "properties": {
                                                  "patchStrategy": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "patchStrategy,omitempty",
                                                      "json": "patchStrategy,omitempty"
                                                    },
                                                    "type": "string",
                                                    "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                    "enum": [
                                                      "merge",
                                                      "strategic",
                                                      "add",
                                                      "remove",
                                                      "copy",
                                                      "move",
                                                      "test"
                                                    ]
                                                  },
                                                  "mutatorRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatorRef,omitempty",
                                                      "json": "mutatorRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "description": "JSON ref to value from where patch should be applied.",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                    }
                                                  },
                                                  "mutatedRef": {
                                                    "x-oapi-codegen-extra-tags": {
                                                      "yaml": "mutatedRef,omitempty",
                                                      "json": "mutatedRef,omitempty"
                                                    },
                                                    "type": "array",
                                                    "items": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to",
                                            "json": "to"
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "SelectorSet": {
                                  "type": "array",
                                  "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "items": {
                                    "x-go-type": "SelectorSetItem",
                                    "type": "object",
                                    "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                    "required": [
                                      "allow"
                                    ],
                                    "properties": {
                                      "allow": {
                                        "description": "Selectors used to define relationships which are allowed.",
                                        "x-go-type": "Selector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "allow",
                                          "json": "allow"
                                        },
                                        "type": "object",
                                        "required": [
                                          "from",
                                          "to"
                                        ],
                                        "properties": {
                                          "from": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from",
                                              "json": "from"
                                            }
                                          },
                                          "to": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to",
                                              "json": "to"
                                            }
                                          }
                                        }
                                      },
                                      "deny": {
                                        "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                        "x-go-type": "Selector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "deny,omitempty",
                                          "json": "deny,omitempty"
                                        },
                                        "type": "object",
                                        "required": [
                                          "from",
                                          "to"
                                        ],
                                        "properties": {
                                          "from": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from",
                                              "json": "from"
                                            }
                                          },
                                          "to": {
                                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "SelectorItem",
                                              "type": "object",
                                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "match": {
                                                  "x-go-type": "MatchSelector",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match,omitempty",
                                                    "json": "match,omitempty"
                                                  },
                                                  "type": "object",
                                                  "description": "Match configuration for selector",
                                                  "properties": {
                                                    "refs": {
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "refs,omitempty",
                                                        "json": "refs,omitempty"
                                                      }
                                                    },
                                                    "from": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "from,omitempty",
                                                        "json": "from,omitempty"
                                                      }
                                                    },
                                                    "to": {
                                                      "type": "array",
                                                      "items": {
                                                        "x-go-type": "MatchSelectorItem",
                                                        "type": "object",
                                                        "description": "Match selector item for binding between nodes",
                                                        "required": [
                                                          "kind"
                                                        ],
                                                        "properties": {
                                                          "id": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "id",
                                                              "json": "id"
                                                            },
                                                            "type": "string",
                                                            "format": "uuid",
                                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                            "x-go-type": "uuid.UUID",
                                                            "x-go-type-import": {
                                                              "path": "github.com/gofrs/uuid"
                                                            }
                                                          },
                                                          "kind": {
                                                            "type": "string",
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "kind",
                                                              "json": "kind"
                                                            }
                                                          },
                                                          "mutatorRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatorRef,omitempty",
                                                              "json": "mutatorRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "description": "JSON ref to value from where patch should be applied.",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                            }
                                                          },
                                                          "mutatedRef": {
                                                            "x-oapi-codegen-extra-tags": {
                                                              "yaml": "mutatedRef,omitempty",
                                                              "json": "mutatedRef,omitempty"
                                                            },
                                                            "type": "array",
                                                            "items": {
                                                              "type": "array",
                                                              "items": {
                                                                "type": "string"
                                                              },
                                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                            }
                                                          }
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "to,omitempty",
                                                        "json": "to,omitempty"
                                                      }
                                                    }
                                                  }
                                                },
                                                "match_strategy_matrix": {
                                                  "description": "Match strategy matrix for the selector",
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  },
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "match_strategy_matrix",
                                                    "json": "match_strategy_matrix"
                                                  }
                                                },
                                                "model": {
                                                  "x-go-type": "modelv1beta1.ModelReference",
                                                  "x-go-type-import": {
                                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                    "name": "modelv1beta1"
                                                  },
                                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "model",
                                                    "json": "model,omitempty"
                                                  },
                                                  "x-generate-db-helpers": true,
                                                  "type": "object",
                                                  "required": [
                                                    "id",
                                                    "name",
                                                    "version",
                                                    "displayName",
                                                    "model",
                                                    "registrant"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "name": {
                                                      "type": "string",
                                                      "description": "The unique name for the model within the scope of a registrant.",
                                                      "pattern": "^[a-z0-9-]+$",
                                                      "examples": [
                                                        "cert-manager"
                                                      ]
                                                    },
                                                    "version": {
                                                      "description": "Version of the model definition.",
                                                      "type": "string",
                                                      "minLength": 5,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                    },
                                                    "displayName": {
                                                      "type": "string",
                                                      "description": "Human-readable name for the model.",
                                                      "minLength": 1,
                                                      "maxLength": 100,
                                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                                      "examples": [
                                                        "Cert Manager"
                                                      ]
                                                    },
                                                    "model": {
                                                      "type": "object",
                                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                      "required": [
                                                        "version"
                                                      ],
                                                      "properties": {
                                                        "version": {
                                                          "description": "Version of the model as defined by the registrant.",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "version"
                                                          },
                                                          "x-order": 1,
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        }
                                                      }
                                                    },
                                                    "registrant": {
                                                      "x-go-type": "RegistrantReference",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "json": "registrant"
                                                      },
                                                      "type": "object",
                                                      "required": [
                                                        "kind"
                                                      ],
                                                      "properties": {
                                                        "kind": {
                                                          "type": "string",
                                                          "description": "Kind of the registrant.",
                                                          "maxLength": 255
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "patch": {
                                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "patch",
                                                    "json": "patch"
                                                  },
                                                  "type": "object",
                                                  "description": "Patch configuration for the selector",
                                                  "properties": {
                                                    "patchStrategy": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patchStrategy,omitempty",
                                                        "json": "patchStrategy,omitempty"
                                                      },
                                                      "type": "string",
                                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                      "enum": [
                                                        "merge",
                                                        "strategic",
                                                        "add",
                                                        "remove",
                                                        "copy",
                                                        "move",
                                                        "test"
                                                      ]
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to",
                                              "json": "to"
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "RelationshipDefinitionMetadataStylesTextTransform": {
                                  "type": "string",
                                  "description": "A transformation to apply to the label text",
                                  "enum": [
                                    "none",
                                    "uppercase",
                                    "lowercase"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesLineStyle": {
                                  "type": "string",
                                  "description": "The style of the edge's line.",
                                  "enum": [
                                    "solid",
                                    "dotted",
                                    "dashed"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesCurveStyle": {
                                  "type": "string",
                                  "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                  "enum": [
                                    "haystack",
                                    "straight",
                                    "bezier",
                                    "unbundled-bezier",
                                    "segments",
                                    "taxi"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesLineCap": {
                                  "type": "string",
                                  "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                  "enum": [
                                    "butt",
                                    "round",
                                    "square"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesMidTargetArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's source arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesMidTargetArrowFill": {
                                  "type": "string",
                                  "description": "The fill state of the edge's source arrow",
                                  "enum": [
                                    "filled",
                                    "hollow"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesTargetArrowShape": {
                                  "type": "string",
                                  "description": "The shape of the edge's source arrow",
                                  "enum": [
                                    "triangle",
                                    "triangle-tee",
                                    "circle-triangle",
                                    "triangle-cross",
                                    "triangle-backcurve",
                                    "vee",
                                    "tee",
                                    "square",
                                    "circle",
                                    "diamond",
                                    "chevron",
                                    "none"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStylesTargetArrowFill": {
                                  "type": "string",
                                  "description": "The fill state of the edge's source arrow",
                                  "enum": [
                                    "filled",
                                    "hollow"
                                  ]
                                },
                                "RelationshipDefinitionMetadataStyles": {
                                  "type": "object",
                                  "description": "Visualization styles for a relationship",
                                  "required": [
                                    "primaryColor",
                                    "svgColor",
                                    "svgWhite"
                                  ],
                                  "properties": {
                                    "primaryColor": {
                                      "type": "string",
                                      "description": "Primary color of the component used for UI representation.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "primaryColor",
                                        "json": "primaryColor"
                                      }
                                    },
                                    "secondaryColor": {
                                      "type": "string",
                                      "description": "Secondary color of the entity used for UI representation.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "secondaryColor,omitempty",
                                        "json": "secondaryColor,omitempty"
                                      }
                                    },
                                    "svgWhite": {
                                      "type": "string",
                                      "description": "White SVG of the entity used for UI representation on dark background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgWhite",
                                        "json": "svgWhite"
                                      }
                                    },
                                    "svgColor": {
                                      "type": "string",
                                      "description": "Colored SVG of the entity used for UI representation on light background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgColor",
                                        "json": "svgColor"
                                      }
                                    },
                                    "svgComplete": {
                                      "type": "string",
                                      "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgComplete,omitempty",
                                        "json": "svgComplete,omitempty"
                                      }
                                    },
                                    "color": {
                                      "type": "string",
                                      "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "color,omitempty",
                                        "json": "color,omitempty"
                                      }
                                    },
                                    "text-opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "The opacity of the label text, including its outline.",
                                      "x-go-name": "TextOpacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "text-opacity,omitempty",
                                        "json": "text-opacity,omitempty"
                                      }
                                    },
                                    "font-family": {
                                      "type": "string",
                                      "description": "A comma-separated list of font names to use on the label text.",
                                      "x-go-name": "FontFamily",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-family,omitempty",
                                        "json": "font-family,omitempty"
                                      }
                                    },
                                    "font-size": {
                                      "type": "string",
                                      "description": "The size of the label text.",
                                      "x-go-name": "FontSize",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-size,omitempty",
                                        "json": "font-size,omitempty"
                                      }
                                    },
                                    "font-style": {
                                      "type": "string",
                                      "description": "A CSS font style to be applied to the label text.",
                                      "x-go-name": "FontStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-style,omitempty",
                                        "json": "font-style,omitempty"
                                      }
                                    },
                                    "font-weight": {
                                      "type": "string",
                                      "description": "A CSS font weight to be applied to the label text.",
                                      "x-go-name": "FontWeight",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "font-weight,omitempty",
                                        "json": "font-weight,omitempty"
                                      }
                                    },
                                    "text-transform": {
                                      "description": "A transformation to apply to the label text",
                                      "x-go-name": "TextTransform",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "text-transform,omitempty",
                                        "json": "text-transform,omitempty"
                                      },
                                      "type": "string",
                                      "enum": [
                                        "none",
                                        "uppercase",
                                        "lowercase"
                                      ]
                                    },
                                    "opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "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.See https://js.cytoscape.org/#style/visibility",
                                      "x-go-name": "Opacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "opacity,omitempty",
                                        "json": "opacity,omitempty"
                                      }
                                    },
                                    "z-index": {
                                      "type": "integer",
                                      "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.",
                                      "x-go-name": "ZIndex",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "z-index,omitempty",
                                        "json": "z-index,omitempty"
                                      }
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "Label",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "label,omitempty",
                                        "json": "label,omitempty"
                                      }
                                    },
                                    "edge-animation": {
                                      "type": "string",
                                      "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                      "x-go-name": "EdgeAnimation",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "edge-animation,omitempty",
                                        "json": "edge-animation,omitempty"
                                      }
                                    },
                                    "curve-style": {
                                      "x-go-name": "CurveStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "curve-style,omitempty",
                                        "json": "curve-style,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                      "enum": [
                                        "haystack",
                                        "straight",
                                        "bezier",
                                        "unbundled-bezier",
                                        "segments",
                                        "taxi"
                                      ]
                                    },
                                    "line-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "LineColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-color,omitempty",
                                        "json": "line-color,omitempty"
                                      }
                                    },
                                    "line-style": {
                                      "x-go-name": "LineStyle",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-style,omitempty",
                                        "json": "line-style,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The style of the edge's line.",
                                      "enum": [
                                        "solid",
                                        "dotted",
                                        "dashed"
                                      ]
                                    },
                                    "line-cap": {
                                      "x-go-name": "LineCap",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-cap,omitempty",
                                        "json": "line-cap,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                      "enum": [
                                        "butt",
                                        "round",
                                        "square"
                                      ]
                                    },
                                    "line-opacity": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                      "x-go-name": "LineOpacity",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "line-opacity,omitempty",
                                        "json": "line-opacity,omitempty"
                                      }
                                    },
                                    "target-arrow-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "TargetArrowColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-color,omitempty",
                                        "json": "target-arrow-color,omitempty"
                                      }
                                    },
                                    "target-arrow-shape": {
                                      "x-go-name": "TargetArrowShape",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-shape,omitempty",
                                        "json": "target-arrow-shape,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The shape of the edge's source arrow",
                                      "enum": [
                                        "triangle",
                                        "triangle-tee",
                                        "circle-triangle",
                                        "triangle-cross",
                                        "triangle-backcurve",
                                        "vee",
                                        "tee",
                                        "square",
                                        "circle",
                                        "diamond",
                                        "chevron",
                                        "none"
                                      ]
                                    },
                                    "target-arrow-fill": {
                                      "x-go-name": "TargetArrowFill",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-arrow-fill,omitempty",
                                        "json": "target-arrow-fill,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The fill state of the edge's source arrow",
                                      "enum": [
                                        "filled",
                                        "hollow"
                                      ]
                                    },
                                    "mid-target-arrow-color": {
                                      "type": "string",
                                      "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "x-go-name": "MidTargetArrowColor",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-color,omitempty",
                                        "json": "mid-target-arrow-color,omitempty"
                                      }
                                    },
                                    "mid-target-arrow-shape": {
                                      "x-go-name": "MidTargetArrowShape",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-shape,omitempty",
                                        "json": "mid-target-arrow-shape,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The shape of the edge's source arrow",
                                      "enum": [
                                        "triangle",
                                        "triangle-tee",
                                        "circle-triangle",
                                        "triangle-cross",
                                        "triangle-backcurve",
                                        "vee",
                                        "tee",
                                        "square",
                                        "circle",
                                        "diamond",
                                        "chevron",
                                        "none"
                                      ]
                                    },
                                    "mid-target-arrow-fill": {
                                      "x-go-name": "MidTargetArrowFill",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mid-target-arrow-fill,omitempty",
                                        "json": "mid-target-arrow-fill,omitempty"
                                      },
                                      "type": "string",
                                      "description": "The fill state of the edge's source arrow",
                                      "enum": [
                                        "filled",
                                        "hollow"
                                      ]
                                    },
                                    "arrow-scale": {
                                      "type": "number",
                                      "format": "float",
                                      "description": "Scaling for the arrow size.",
                                      "x-go-name": "ArrowScale",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "arrow-scale,omitempty",
                                        "json": "arrow-scale,omitempty"
                                      }
                                    },
                                    "source-label": {
                                      "type": "string",
                                      "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "SourceLabel",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "source-label,omitempty",
                                        "json": "source-label,omitempty"
                                      }
                                    },
                                    "target-label": {
                                      "type": "string",
                                      "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                      "x-go-name": "TargetLabel",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "target-label,omitempty",
                                        "json": "target-label,omitempty"
                                      }
                                    }
                                  }
                                },
                                "Relationship_Metadata": {
                                  "type": "object",
                                  "description": "Metadata contains additional information associated with the Relationship.",
                                  "additionalProperties": true,
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "properties": {
                                    "description": {
                                      "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "description",
                                        "json": "description"
                                      }
                                    },
                                    "styles": {
                                      "x-go-type": "RelationshipDefinitionMetadataStyles",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "styles",
                                        "json": "styles"
                                      },
                                      "type": "object",
                                      "description": "Visualization styles for a relationship",
                                      "required": [
                                        "primaryColor",
                                        "svgColor",
                                        "svgWhite"
                                      ],
                                      "properties": {
                                        "primaryColor": {
                                          "type": "string",
                                          "description": "Primary color of the component used for UI representation.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "primaryColor",
                                            "json": "primaryColor"
                                          }
                                        },
                                        "secondaryColor": {
                                          "type": "string",
                                          "description": "Secondary color of the entity used for UI representation.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "secondaryColor,omitempty",
                                            "json": "secondaryColor,omitempty"
                                          }
                                        },
                                        "svgWhite": {
                                          "type": "string",
                                          "description": "White SVG of the entity used for UI representation on dark background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgWhite",
                                            "json": "svgWhite"
                                          }
                                        },
                                        "svgColor": {
                                          "type": "string",
                                          "description": "Colored SVG of the entity used for UI representation on light background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgColor",
                                            "json": "svgColor"
                                          }
                                        },
                                        "svgComplete": {
                                          "type": "string",
                                          "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "svgComplete,omitempty",
                                            "json": "svgComplete,omitempty"
                                          }
                                        },
                                        "color": {
                                          "type": "string",
                                          "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "color,omitempty",
                                            "json": "color,omitempty"
                                          }
                                        },
                                        "text-opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "The opacity of the label text, including its outline.",
                                          "x-go-name": "TextOpacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "text-opacity,omitempty",
                                            "json": "text-opacity,omitempty"
                                          }
                                        },
                                        "font-family": {
                                          "type": "string",
                                          "description": "A comma-separated list of font names to use on the label text.",
                                          "x-go-name": "FontFamily",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-family,omitempty",
                                            "json": "font-family,omitempty"
                                          }
                                        },
                                        "font-size": {
                                          "type": "string",
                                          "description": "The size of the label text.",
                                          "x-go-name": "FontSize",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-size,omitempty",
                                            "json": "font-size,omitempty"
                                          }
                                        },
                                        "font-style": {
                                          "type": "string",
                                          "description": "A CSS font style to be applied to the label text.",
                                          "x-go-name": "FontStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-style,omitempty",
                                            "json": "font-style,omitempty"
                                          }
                                        },
                                        "font-weight": {
                                          "type": "string",
                                          "description": "A CSS font weight to be applied to the label text.",
                                          "x-go-name": "FontWeight",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "font-weight,omitempty",
                                            "json": "font-weight,omitempty"
                                          }
                                        },
                                        "text-transform": {
                                          "description": "A transformation to apply to the label text",
                                          "x-go-name": "TextTransform",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "text-transform,omitempty",
                                            "json": "text-transform,omitempty"
                                          },
                                          "type": "string",
                                          "enum": [
                                            "none",
                                            "uppercase",
                                            "lowercase"
                                          ]
                                        },
                                        "opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "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.See https://js.cytoscape.org/#style/visibility",
                                          "x-go-name": "Opacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "opacity,omitempty",
                                            "json": "opacity,omitempty"
                                          }
                                        },
                                        "z-index": {
                                          "type": "integer",
                                          "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.",
                                          "x-go-name": "ZIndex",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "z-index,omitempty",
                                            "json": "z-index,omitempty"
                                          }
                                        },
                                        "label": {
                                          "type": "string",
                                          "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "Label",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "label,omitempty",
                                            "json": "label,omitempty"
                                          }
                                        },
                                        "edge-animation": {
                                          "type": "string",
                                          "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                          "x-go-name": "EdgeAnimation",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "edge-animation,omitempty",
                                            "json": "edge-animation,omitempty"
                                          }
                                        },
                                        "curve-style": {
                                          "x-go-name": "CurveStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "curve-style,omitempty",
                                            "json": "curve-style,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                          "enum": [
                                            "haystack",
                                            "straight",
                                            "bezier",
                                            "unbundled-bezier",
                                            "segments",
                                            "taxi"
                                          ]
                                        },
                                        "line-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "LineColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-color,omitempty",
                                            "json": "line-color,omitempty"
                                          }
                                        },
                                        "line-style": {
                                          "x-go-name": "LineStyle",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-style,omitempty",
                                            "json": "line-style,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The style of the edge's line.",
                                          "enum": [
                                            "solid",
                                            "dotted",
                                            "dashed"
                                          ]
                                        },
                                        "line-cap": {
                                          "x-go-name": "LineCap",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-cap,omitempty",
                                            "json": "line-cap,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                          "enum": [
                                            "butt",
                                            "round",
                                            "square"
                                          ]
                                        },
                                        "line-opacity": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                          "x-go-name": "LineOpacity",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "line-opacity,omitempty",
                                            "json": "line-opacity,omitempty"
                                          }
                                        },
                                        "target-arrow-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "TargetArrowColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-color,omitempty",
                                            "json": "target-arrow-color,omitempty"
                                          }
                                        },
                                        "target-arrow-shape": {
                                          "x-go-name": "TargetArrowShape",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-shape,omitempty",
                                            "json": "target-arrow-shape,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The shape of the edge's source arrow",
                                          "enum": [
                                            "triangle",
                                            "triangle-tee",
                                            "circle-triangle",
                                            "triangle-cross",
                                            "triangle-backcurve",
                                            "vee",
                                            "tee",
                                            "square",
                                            "circle",
                                            "diamond",
                                            "chevron",
                                            "none"
                                          ]
                                        },
                                        "target-arrow-fill": {
                                          "x-go-name": "TargetArrowFill",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-arrow-fill,omitempty",
                                            "json": "target-arrow-fill,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The fill state of the edge's source arrow",
                                          "enum": [
                                            "filled",
                                            "hollow"
                                          ]
                                        },
                                        "mid-target-arrow-color": {
                                          "type": "string",
                                          "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                          "x-go-name": "MidTargetArrowColor",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-color,omitempty",
                                            "json": "mid-target-arrow-color,omitempty"
                                          }
                                        },
                                        "mid-target-arrow-shape": {
                                          "x-go-name": "MidTargetArrowShape",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-shape,omitempty",
                                            "json": "mid-target-arrow-shape,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The shape of the edge's source arrow",
                                          "enum": [
                                            "triangle",
                                            "triangle-tee",
                                            "circle-triangle",
                                            "triangle-cross",
                                            "triangle-backcurve",
                                            "vee",
                                            "tee",
                                            "square",
                                            "circle",
                                            "diamond",
                                            "chevron",
                                            "none"
                                          ]
                                        },
                                        "mid-target-arrow-fill": {
                                          "x-go-name": "MidTargetArrowFill",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mid-target-arrow-fill,omitempty",
                                            "json": "mid-target-arrow-fill,omitempty"
                                          },
                                          "type": "string",
                                          "description": "The fill state of the edge's source arrow",
                                          "enum": [
                                            "filled",
                                            "hollow"
                                          ]
                                        },
                                        "arrow-scale": {
                                          "type": "number",
                                          "format": "float",
                                          "description": "Scaling for the arrow size.",
                                          "x-go-name": "ArrowScale",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "arrow-scale,omitempty",
                                            "json": "arrow-scale,omitempty"
                                          }
                                        },
                                        "source-label": {
                                          "type": "string",
                                          "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "SourceLabel",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "source-label,omitempty",
                                            "json": "source-label,omitempty"
                                          }
                                        },
                                        "target-label": {
                                          "type": "string",
                                          "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                          "x-go-name": "TargetLabel",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "target-label,omitempty",
                                            "json": "target-label,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "isAnnotation": {
                                      "type": "boolean",
                                      "description": "Indicates whether the relationship should be treated as a logical representation only",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "isAnnotation",
                                        "json": "isAnnotation"
                                      }
                                    }
                                  }
                                },
                                "RelationshipDefinition": {
                                  "description": "Relationships define the nature of interaction between interconnected components in Meshery. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs.meshery.io/concepts/logical/relationships.",
                                  "type": "object",
                                  "required": [
                                    "schemaVersion",
                                    "version",
                                    "model",
                                    "kind",
                                    "type",
                                    "subType",
                                    "id"
                                  ],
                                  "properties": {
                                    "id": {
                                      "description": "Uniquely identifies the entity",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 1,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "schemaVersion": {
                                      "description": "Specifies the version of the schema used for the relationship definition.",
                                      "x-order": 8,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "schemaVersion",
                                        "json": "schemaVersion"
                                      },
                                      "type": "string",
                                      "minLength": 2,
                                      "maxLength": 100,
                                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                      "example": [
                                        "v1",
                                        "v1alpha1",
                                        "v2beta3",
                                        "v1.custom-suffix",
                                        "models.meshery.io/v1beta1",
                                        "capability.meshery.io/v1alpha1"
                                      ]
                                    },
                                    "version": {
                                      "description": "Specifies the version of the relationship definition.",
                                      "x-order": 13,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "version",
                                        "json": "version"
                                      },
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    },
                                    "kind": {
                                      "description": "Kind of the Relationship. Learn more about relationships - https://docs.meshery.io/concepts/logical/relationships.",
                                      "type": "string",
                                      "enum": [
                                        "hierarchical",
                                        "edge",
                                        "sibling"
                                      ],
                                      "x-order": 4,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "type": {
                                      "description": "Classification of relationships. Used to group relationships similar in nature.",
                                      "type": "string",
                                      "x-go-name": "RelationshipType",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 12,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "type",
                                        "json": "type",
                                        "gorm": "column:type"
                                      }
                                    },
                                    "subType": {
                                      "description": "Most granular unit of relationship classification. The combination of Kind, Type and SubType together uniquely identify a Relationship.",
                                      "type": "string",
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 10,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "subType",
                                        "json": "subType"
                                      }
                                    },
                                    "status": {
                                      "type": "string",
                                      "description": "Status of the relationship.",
                                      "enum": [
                                        "enabled",
                                        "ignored",
                                        "deleted",
                                        "approved",
                                        "pending"
                                      ],
                                      "x-order": 11,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "status",
                                        "json": "status"
                                      }
                                    },
                                    "capabilities": {
                                      "type": "array",
                                      "description": "Capabilities associated with the relationship.",
                                      "x-order": 2,
                                      "items": {
                                        "x-go-type": "capabilityv1alpha1.Capability",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                          "name": "capabilityv1alpha1"
                                        },
                                        "$id": "https://schemas.meshery.io/capability.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "description",
                                          "schemaVersion",
                                          "version",
                                          "displayName",
                                          "kind",
                                          "type",
                                          "subType",
                                          "entityState",
                                          "key",
                                          "status"
                                        ],
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "properties": {
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema to which the capability definition conforms.",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the capability definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "description": "Name of the capability in human-readible format.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "description": {
                                            "type": "string",
                                            "description": "A written representation of the purpose and characteristics of the capability."
                                          },
                                          "kind": {
                                            "description": "Top-level categorization of the capability",
                                            "additionalProperties": false,
                                            "anyOf": [
                                              {
                                                "const": "action",
                                                "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                              },
                                              {
                                                "const": "mutate",
                                                "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                              },
                                              {
                                                "const": "view",
                                                "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                              },
                                              {
                                                "const": "interaction",
                                                "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                              }
                                            ],
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "type": {
                                            "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "subType": {
                                            "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "key": {
                                            "description": "Key that backs the capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "entityState": {
                                            "description": "State of the entity in which the capability is applicable.",
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "enum": [
                                                "declaration",
                                                "instance"
                                              ],
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                              "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                            }
                                          },
                                          "status": {
                                            "type": "string",
                                            "description": "Status of the capability",
                                            "default": "enabled",
                                            "enum": [
                                              "enabled",
                                              "disabled"
                                            ]
                                          },
                                          "metadata": {
                                            "type": "object",
                                            "description": "Metadata contains additional information associated with the capability. Extension point.",
                                            "additionalProperties": true
                                          }
                                        },
                                        "default": [
                                          {
                                            "description": "Configure the visual styles for the component",
                                            "displayName": "Styling",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Change the shape of the component",
                                            "displayName": "Change Shape",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "shape",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Drag and Drop a component into a parent component in graph view",
                                            "displayName": "Compound Drag And Drop",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "interaction",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "compoundDnd",
                                            "type": "graph",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Add text to nodes body",
                                            "displayName": "Body Text",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1alpha1",
                                            "status": "enabled",
                                            "subType": "body-text",
                                            "type": "style",
                                            "version": "0.7.0"
                                          }
                                        ]
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "capabilities",
                                        "json": "capabilities,omitempty",
                                        "gorm": "type:bytes;serializer:json"
                                      }
                                    },
                                    "metadata": {
                                      "x-go-type": "Relationship_Metadata",
                                      "x-order": 5,
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json",
                                        "yaml": "metadata",
                                        "json": "metadata,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Metadata contains additional information associated with the Relationship.",
                                      "additionalProperties": true,
                                      "properties": {
                                        "description": {
                                          "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                          "type": "string",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "description",
                                            "json": "description"
                                          }
                                        },
                                        "styles": {
                                          "x-go-type": "RelationshipDefinitionMetadataStyles",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "styles",
                                            "json": "styles"
                                          },
                                          "type": "object",
                                          "description": "Visualization styles for a relationship",
                                          "required": [
                                            "primaryColor",
                                            "svgColor",
                                            "svgWhite"
                                          ],
                                          "properties": {
                                            "primaryColor": {
                                              "type": "string",
                                              "description": "Primary color of the component used for UI representation.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "primaryColor",
                                                "json": "primaryColor"
                                              }
                                            },
                                            "secondaryColor": {
                                              "type": "string",
                                              "description": "Secondary color of the entity used for UI representation.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "secondaryColor,omitempty",
                                                "json": "secondaryColor,omitempty"
                                              }
                                            },
                                            "svgWhite": {
                                              "type": "string",
                                              "description": "White SVG of the entity used for UI representation on dark background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgWhite",
                                                "json": "svgWhite"
                                              }
                                            },
                                            "svgColor": {
                                              "type": "string",
                                              "description": "Colored SVG of the entity used for UI representation on light background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgColor",
                                                "json": "svgColor"
                                              }
                                            },
                                            "svgComplete": {
                                              "type": "string",
                                              "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "svgComplete,omitempty",
                                                "json": "svgComplete,omitempty"
                                              }
                                            },
                                            "color": {
                                              "type": "string",
                                              "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "color,omitempty",
                                                "json": "color,omitempty"
                                              }
                                            },
                                            "text-opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "The opacity of the label text, including its outline.",
                                              "x-go-name": "TextOpacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "text-opacity,omitempty",
                                                "json": "text-opacity,omitempty"
                                              }
                                            },
                                            "font-family": {
                                              "type": "string",
                                              "description": "A comma-separated list of font names to use on the label text.",
                                              "x-go-name": "FontFamily",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-family,omitempty",
                                                "json": "font-family,omitempty"
                                              }
                                            },
                                            "font-size": {
                                              "type": "string",
                                              "description": "The size of the label text.",
                                              "x-go-name": "FontSize",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-size,omitempty",
                                                "json": "font-size,omitempty"
                                              }
                                            },
                                            "font-style": {
                                              "type": "string",
                                              "description": "A CSS font style to be applied to the label text.",
                                              "x-go-name": "FontStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-style,omitempty",
                                                "json": "font-style,omitempty"
                                              }
                                            },
                                            "font-weight": {
                                              "type": "string",
                                              "description": "A CSS font weight to be applied to the label text.",
                                              "x-go-name": "FontWeight",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "font-weight,omitempty",
                                                "json": "font-weight,omitempty"
                                              }
                                            },
                                            "text-transform": {
                                              "description": "A transformation to apply to the label text",
                                              "x-go-name": "TextTransform",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "text-transform,omitempty",
                                                "json": "text-transform,omitempty"
                                              },
                                              "type": "string",
                                              "enum": [
                                                "none",
                                                "uppercase",
                                                "lowercase"
                                              ]
                                            },
                                            "opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "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.See https://js.cytoscape.org/#style/visibility",
                                              "x-go-name": "Opacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "opacity,omitempty",
                                                "json": "opacity,omitempty"
                                              }
                                            },
                                            "z-index": {
                                              "type": "integer",
                                              "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.",
                                              "x-go-name": "ZIndex",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "z-index,omitempty",
                                                "json": "z-index,omitempty"
                                              }
                                            },
                                            "label": {
                                              "type": "string",
                                              "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "Label",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "label,omitempty",
                                                "json": "label,omitempty"
                                              }
                                            },
                                            "edge-animation": {
                                              "type": "string",
                                              "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                              "x-go-name": "EdgeAnimation",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "edge-animation,omitempty",
                                                "json": "edge-animation,omitempty"
                                              }
                                            },
                                            "curve-style": {
                                              "x-go-name": "CurveStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "curve-style,omitempty",
                                                "json": "curve-style,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                              "enum": [
                                                "haystack",
                                                "straight",
                                                "bezier",
                                                "unbundled-bezier",
                                                "segments",
                                                "taxi"
                                              ]
                                            },
                                            "line-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "LineColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-color,omitempty",
                                                "json": "line-color,omitempty"
                                              }
                                            },
                                            "line-style": {
                                              "x-go-name": "LineStyle",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-style,omitempty",
                                                "json": "line-style,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The style of the edge's line.",
                                              "enum": [
                                                "solid",
                                                "dotted",
                                                "dashed"
                                              ]
                                            },
                                            "line-cap": {
                                              "x-go-name": "LineCap",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-cap,omitempty",
                                                "json": "line-cap,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                              "enum": [
                                                "butt",
                                                "round",
                                                "square"
                                              ]
                                            },
                                            "line-opacity": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                              "x-go-name": "LineOpacity",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "line-opacity,omitempty",
                                                "json": "line-opacity,omitempty"
                                              }
                                            },
                                            "target-arrow-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "TargetArrowColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-color,omitempty",
                                                "json": "target-arrow-color,omitempty"
                                              }
                                            },
                                            "target-arrow-shape": {
                                              "x-go-name": "TargetArrowShape",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-shape,omitempty",
                                                "json": "target-arrow-shape,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The shape of the edge's source arrow",
                                              "enum": [
                                                "triangle",
                                                "triangle-tee",
                                                "circle-triangle",
                                                "triangle-cross",
                                                "triangle-backcurve",
                                                "vee",
                                                "tee",
                                                "square",
                                                "circle",
                                                "diamond",
                                                "chevron",
                                                "none"
                                              ]
                                            },
                                            "target-arrow-fill": {
                                              "x-go-name": "TargetArrowFill",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-arrow-fill,omitempty",
                                                "json": "target-arrow-fill,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The fill state of the edge's source arrow",
                                              "enum": [
                                                "filled",
                                                "hollow"
                                              ]
                                            },
                                            "mid-target-arrow-color": {
                                              "type": "string",
                                              "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                              "x-go-name": "MidTargetArrowColor",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-color,omitempty",
                                                "json": "mid-target-arrow-color,omitempty"
                                              }
                                            },
                                            "mid-target-arrow-shape": {
                                              "x-go-name": "MidTargetArrowShape",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-shape,omitempty",
                                                "json": "mid-target-arrow-shape,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The shape of the edge's source arrow",
                                              "enum": [
                                                "triangle",
                                                "triangle-tee",
                                                "circle-triangle",
                                                "triangle-cross",
                                                "triangle-backcurve",
                                                "vee",
                                                "tee",
                                                "square",
                                                "circle",
                                                "diamond",
                                                "chevron",
                                                "none"
                                              ]
                                            },
                                            "mid-target-arrow-fill": {
                                              "x-go-name": "MidTargetArrowFill",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "mid-target-arrow-fill,omitempty",
                                                "json": "mid-target-arrow-fill,omitempty"
                                              },
                                              "type": "string",
                                              "description": "The fill state of the edge's source arrow",
                                              "enum": [
                                                "filled",
                                                "hollow"
                                              ]
                                            },
                                            "arrow-scale": {
                                              "type": "number",
                                              "format": "float",
                                              "description": "Scaling for the arrow size.",
                                              "x-go-name": "ArrowScale",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "arrow-scale,omitempty",
                                                "json": "arrow-scale,omitempty"
                                              }
                                            },
                                            "source-label": {
                                              "type": "string",
                                              "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "SourceLabel",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "source-label,omitempty",
                                                "json": "source-label,omitempty"
                                              }
                                            },
                                            "target-label": {
                                              "type": "string",
                                              "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                              "x-go-name": "TargetLabel",
                                              "x-oapi-codegen-extra-tags": {
                                                "yaml": "target-label,omitempty",
                                                "json": "target-label,omitempty"
                                              }
                                            }
                                          }
                                        },
                                        "isAnnotation": {
                                          "type": "boolean",
                                          "description": "Indicates whether the relationship should be treated as a logical representation only",
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "isAnnotation",
                                            "json": "isAnnotation"
                                          }
                                        }
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 6,
                                      "description": "Model 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",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model",
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "modelId": {
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-go-name": "ModelId",
                                      "x-order": 7,
                                      "description": "Foreign key reference to the model",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "-",
                                        "gorm": "index:idx_relationship_definition_dbs_model_id,column:model_id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "evaluationQuery": {
                                      "description": "Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs.",
                                      "type": "string",
                                      "x-order": 3,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "evaluationQuery",
                                        "json": "evaluationQuery"
                                      }
                                    },
                                    "selectors": {
                                      "x-go-type": "SelectorSet",
                                      "x-order": 9,
                                      "x-oapi-codegen-extra-tags": {
                                        "gorm": "type:bytes;serializer:json",
                                        "yaml": "selectors,omitempty",
                                        "json": "selectors,omitempty"
                                      },
                                      "type": "array",
                                      "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                                      "items": {
                                        "x-go-type": "SelectorSetItem",
                                        "type": "object",
                                        "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                                        "required": [
                                          "allow"
                                        ],
                                        "properties": {
                                          "allow": {
                                            "description": "Selectors used to define relationships which are allowed.",
                                            "x-go-type": "Selector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "allow",
                                              "json": "allow"
                                            },
                                            "type": "object",
                                            "required": [
                                              "from",
                                              "to"
                                            ],
                                            "properties": {
                                              "from": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from",
                                                  "json": "from"
                                                }
                                              },
                                              "to": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to",
                                                  "json": "to"
                                                }
                                              }
                                            }
                                          },
                                          "deny": {
                                            "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                            "x-go-type": "Selector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "deny,omitempty",
                                              "json": "deny,omitempty"
                                            },
                                            "type": "object",
                                            "required": [
                                              "from",
                                              "to"
                                            ],
                                            "properties": {
                                              "from": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from",
                                                  "json": "from"
                                                }
                                              },
                                              "to": {
                                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "SelectorItem",
                                                  "type": "object",
                                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "match": {
                                                      "x-go-type": "MatchSelector",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match,omitempty",
                                                        "json": "match,omitempty"
                                                      },
                                                      "type": "object",
                                                      "description": "Match configuration for selector",
                                                      "properties": {
                                                        "refs": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "refs,omitempty",
                                                            "json": "refs,omitempty"
                                                          }
                                                        },
                                                        "from": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "from,omitempty",
                                                            "json": "from,omitempty"
                                                          }
                                                        },
                                                        "to": {
                                                          "type": "array",
                                                          "items": {
                                                            "x-go-type": "MatchSelectorItem",
                                                            "type": "object",
                                                            "description": "Match selector item for binding between nodes",
                                                            "required": [
                                                              "kind"
                                                            ],
                                                            "properties": {
                                                              "id": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "id",
                                                                  "json": "id"
                                                                },
                                                                "type": "string",
                                                                "format": "uuid",
                                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                                "x-go-type": "uuid.UUID",
                                                                "x-go-type-import": {
                                                                  "path": "github.com/gofrs/uuid"
                                                                }
                                                              },
                                                              "kind": {
                                                                "type": "string",
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "kind",
                                                                  "json": "kind"
                                                                }
                                                              },
                                                              "mutatorRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatorRef,omitempty",
                                                                  "json": "mutatorRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "description": "JSON ref to value from where patch should be applied.",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                                }
                                                              },
                                                              "mutatedRef": {
                                                                "x-oapi-codegen-extra-tags": {
                                                                  "yaml": "mutatedRef,omitempty",
                                                                  "json": "mutatedRef,omitempty"
                                                                },
                                                                "type": "array",
                                                                "items": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  },
                                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                                }
                                                              }
                                                            }
                                                          },
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "to,omitempty",
                                                            "json": "to,omitempty"
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "match_strategy_matrix": {
                                                      "description": "Match strategy matrix for the selector",
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        }
                                                      },
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "match_strategy_matrix",
                                                        "json": "match_strategy_matrix"
                                                      }
                                                    },
                                                    "model": {
                                                      "x-go-type": "modelv1beta1.ModelReference",
                                                      "x-go-type-import": {
                                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                                        "name": "modelv1beta1"
                                                      },
                                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "model",
                                                        "json": "model,omitempty"
                                                      },
                                                      "x-generate-db-helpers": true,
                                                      "type": "object",
                                                      "required": [
                                                        "id",
                                                        "name",
                                                        "version",
                                                        "displayName",
                                                        "model",
                                                        "registrant"
                                                      ],
                                                      "properties": {
                                                        "id": {
                                                          "type": "string",
                                                          "format": "uuid",
                                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                          "x-go-type": "uuid.UUID",
                                                          "x-go-type-import": {
                                                            "path": "github.com/gofrs/uuid"
                                                          }
                                                        },
                                                        "name": {
                                                          "type": "string",
                                                          "description": "The unique name for the model within the scope of a registrant.",
                                                          "pattern": "^[a-z0-9-]+$",
                                                          "examples": [
                                                            "cert-manager"
                                                          ]
                                                        },
                                                        "version": {
                                                          "description": "Version of the model definition.",
                                                          "type": "string",
                                                          "minLength": 5,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                        },
                                                        "displayName": {
                                                          "type": "string",
                                                          "description": "Human-readable name for the model.",
                                                          "minLength": 1,
                                                          "maxLength": 100,
                                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                                          "examples": [
                                                            "Cert Manager"
                                                          ]
                                                        },
                                                        "model": {
                                                          "type": "object",
                                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                          "required": [
                                                            "version"
                                                          ],
                                                          "properties": {
                                                            "version": {
                                                              "description": "Version of the model as defined by the registrant.",
                                                              "x-oapi-codegen-extra-tags": {
                                                                "json": "version"
                                                              },
                                                              "x-order": 1,
                                                              "type": "string",
                                                              "minLength": 5,
                                                              "maxLength": 100,
                                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                            }
                                                          }
                                                        },
                                                        "registrant": {
                                                          "x-go-type": "RegistrantReference",
                                                          "x-oapi-codegen-extra-tags": {
                                                            "json": "registrant"
                                                          },
                                                          "type": "object",
                                                          "required": [
                                                            "kind"
                                                          ],
                                                          "properties": {
                                                            "kind": {
                                                              "type": "string",
                                                              "description": "Kind of the registrant.",
                                                              "maxLength": 255
                                                            }
                                                          }
                                                        }
                                                      }
                                                    },
                                                    "patch": {
                                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "patch",
                                                        "json": "patch"
                                                      },
                                                      "type": "object",
                                                      "description": "Patch configuration for the selector",
                                                      "properties": {
                                                        "patchStrategy": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "patchStrategy,omitempty",
                                                            "json": "patchStrategy,omitempty"
                                                          },
                                                          "type": "string",
                                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                          "enum": [
                                                            "merge",
                                                            "strategic",
                                                            "add",
                                                            "remove",
                                                            "copy",
                                                            "move",
                                                            "test"
                                                          ]
                                                        },
                                                        "mutatorRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatorRef,omitempty",
                                                            "json": "mutatorRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "description": "JSON ref to value from where patch should be applied.",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                          }
                                                        },
                                                        "mutatedRef": {
                                                          "x-oapi-codegen-extra-tags": {
                                                            "yaml": "mutatedRef,omitempty",
                                                            "json": "mutatedRef,omitempty"
                                                          },
                                                          "type": "array",
                                                          "items": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            },
                                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to",
                                                  "json": "to"
                                                }
                                              }
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          },
                          "description": "The relationships matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      },
      "post": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "registerRegistryRelationship",
        "summary": "Register a relationship definition",
        "description": "Registrant-facing channel through which relationships are registered into the capabilities registry.",
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "description": "Envelope with which a registrant submits an entity definition for registration into the capabilities registry.",
                "required": [
                  "connection",
                  "entityType",
                  "entity"
                ],
                "properties": {
                  "connection": {
                    "description": "Connection identifying the registrant.",
                    "$id": "https://schemas.meshery.io/connection.yaml",
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "additionalProperties": false,
                    "type": "object",
                    "required": [
                      "id",
                      "schemaVersion",
                      "name",
                      "type",
                      "subType",
                      "kind",
                      "status"
                    ],
                    "properties": {
                      "id": {
                        "description": "Connection ID",
                        "x-order": 1,
                        "x-go-name": "ID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "id"
                        },
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "name": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "name"
                        },
                        "x-order": 2,
                        "type": "string",
                        "description": "Connection Name",
                        "minLength": 1,
                        "maxLength": 255
                      },
                      "description": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "description",
                          "json": "description"
                        },
                        "x-order": 3,
                        "type": "string",
                        "description": "Human-readable description of the connection and its purpose.",
                        "maxLength": 1000
                      },
                      "url": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "url",
                          "json": "url"
                        },
                        "x-order": 4,
                        "type": "string",
                        "format": "uri",
                        "description": "URL of the remote resource this connection points to (e.g. the Helm repository URL, the Kubernetes API server endpoint, the Grafana instance URL).",
                        "maxLength": 2048
                      },
                      "credentialId": {
                        "x-go-name": "CredentialID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "credential_id",
                          "json": "credentialId"
                        },
                        "x-order": 5,
                        "description": "Associated Credential ID",
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "type": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "type",
                          "json": "type",
                          "yaml": "type"
                        },
                        "x-go-name": "ConnectionType",
                        "x-order": 6,
                        "type": "string",
                        "description": "Connection Type (platform, telemetry, collaboration)",
                        "maxLength": 255
                      },
                      "subType": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "sub_type",
                          "json": "subType"
                        },
                        "x-order": 7,
                        "type": "string",
                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)",
                        "maxLength": 255
                      },
                      "kind": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "kind"
                        },
                        "x-order": 8,
                        "type": "string",
                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)",
                        "maxLength": 255
                      },
                      "modelReference": {
                        "x-go-type": "modelv1beta1.ModelReference",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/v1beta1/model",
                          "name": "modelv1beta1"
                        },
                        "x-order": 8,
                        "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",
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "model_reference",
                          "db": "model_reference",
                          "json": "modelReference",
                          "yaml": "modelReference"
                        },
                        "x-generate-db-helpers": true,
                        "type": "object",
                        "required": [
                          "id",
                          "name",
                          "version",
                          "displayName",
                          "model",
                          "registrant"
                        ],
                        "properties": {
                          "id": {
                            "type": "string",
                            "format": "uuid",
                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                            "x-go-type": "uuid.UUID",
                            "x-go-type-import": {
                              "path": "github.com/gofrs/uuid"
                            }
                          },
                          "name": {
                            "type": "string",
                            "description": "The unique name for the model within the scope of a registrant.",
                            "pattern": "^[a-z0-9-]+$",
                            "examples": [
                              "cert-manager"
                            ]
                          },
                          "version": {
                            "description": "Version of the model definition.",
                            "type": "string",
                            "minLength": 5,
                            "maxLength": 100,
                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                          },
                          "displayName": {
                            "type": "string",
                            "description": "Human-readable name for the model.",
                            "minLength": 1,
                            "maxLength": 100,
                            "pattern": "^[a-zA-Z0-9 ]+$",
                            "examples": [
                              "Cert Manager"
                            ]
                          },
                          "model": {
                            "type": "object",
                            "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                            "required": [
                              "version"
                            ],
                            "properties": {
                              "version": {
                                "description": "Version of the model as defined by the registrant.",
                                "x-oapi-codegen-extra-tags": {
                                  "json": "version"
                                },
                                "x-order": 1,
                                "type": "string",
                                "minLength": 5,
                                "maxLength": 100,
                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                              }
                            }
                          },
                          "registrant": {
                            "x-go-type": "RegistrantReference",
                            "x-oapi-codegen-extra-tags": {
                              "json": "registrant"
                            },
                            "type": "object",
                            "required": [
                              "kind"
                            ],
                            "properties": {
                              "kind": {
                                "type": "string",
                                "description": "Kind of the registrant.",
                                "maxLength": 255
                              }
                            }
                          }
                        }
                      },
                      "metadata": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "metadata"
                        },
                        "x-order": 9,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Additional connection metadata"
                      },
                      "credentialSchema": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "credential_schema"
                        },
                        "x-order": 9,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Schema for the credential Associated with the connection"
                      },
                      "connectionSchema": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "connection_schema"
                        },
                        "x-order": 9,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Schema for the connection"
                      },
                      "styles": {
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "type:bytes;serializer:json",
                          "db": "-",
                          "yaml": "styles",
                          "json": "styles"
                        },
                        "x-go-type": "core.ComponentStyles",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core",
                          "name": "core"
                        },
                        "x-order": 17,
                        "description": "Visualization styles for the connection, including svgColor and svgWhite used for UI representation.",
                        "type": "object",
                        "required": [
                          "shape",
                          "primaryColor",
                          "svgColor",
                          "svgWhite",
                          "svgComplete"
                        ],
                        "allOf": [
                          {
                            "type": "object",
                            "description": "Common styles for all entities",
                            "additionalProperties": true,
                            "required": [
                              "primaryColor",
                              "svgColor",
                              "svgWhite",
                              "svgComplete"
                            ],
                            "properties": {
                              "primaryColor": {
                                "type": "string",
                                "description": "Primary color of the component used for UI representation.",
                                "maxLength": 500
                              },
                              "secondaryColor": {
                                "type": "string",
                                "description": "Secondary color of the entity used for UI representation.",
                                "maxLength": 500
                              },
                              "svgWhite": {
                                "type": "string",
                                "description": "White SVG of the entity used for UI representation on dark background.",
                                "maxLength": 500
                              },
                              "svgColor": {
                                "type": "string",
                                "description": "Colored SVG of the entity used for UI representation on light background.",
                                "maxLength": 500
                              },
                              "svgComplete": {
                                "type": "string",
                                "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                "maxLength": 500
                              },
                              "color": {
                                "type": "string",
                                "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 500
                              },
                              "textOpacity": {
                                "type": "number",
                                "description": "The opacity of the label text, including its outline.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "fontFamily": {
                                "type": "string",
                                "description": "A comma-separated list of font names to use on the label text.",
                                "maxLength": 500
                              },
                              "fontSize": {
                                "type": "string",
                                "description": "The size of the label text.",
                                "maxLength": 500
                              },
                              "fontStyle": {
                                "type": "string",
                                "description": "A CSS font style to be applied to the label text.",
                                "maxLength": 500
                              },
                              "fontWeight": {
                                "type": "string",
                                "description": "A CSS font weight to be applied to the label text.",
                                "maxLength": 500
                              },
                              "textTransform": {
                                "type": "string",
                                "description": "A transformation to apply to the label text",
                                "enum": [
                                  "none",
                                  "uppercase",
                                  "lowercase"
                                ]
                              },
                              "opacity": {
                                "type": "number",
                                "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.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "zIndex": {
                                "type": "integer",
                                "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.",
                                "minimum": 0
                              },
                              "label": {
                                "type": "string",
                                "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                "maxLength": 500
                              },
                              "animation": {
                                "type": "object",
                                "description": "The animation to apply to the element. example ripple,bounce,etc"
                              }
                            }
                          },
                          {
                            "type": "object",
                            "properties": {
                              "shape": {
                                "type": "string",
                                "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)",
                                "enum": [
                                  "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"
                                ]
                              },
                              "position": {
                                "type": "object",
                                "additionalProperties": false,
                                "required": [
                                  "x",
                                  "y"
                                ],
                                "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.",
                                "properties": {
                                  "x": {
                                    "type": "number",
                                    "description": "The x-coordinate of the node.",
                                    "minimum": -1000000,
                                    "maximum": 1000000,
                                    "x-go-type": "float64"
                                  },
                                  "y": {
                                    "type": "number",
                                    "description": "The y-coordinate of the node.",
                                    "minimum": -1000000,
                                    "maximum": 1000000,
                                    "x-go-type": "float64"
                                  }
                                }
                              },
                              "bodyText": {
                                "type": "string",
                                "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                "maxLength": 500
                              },
                              "bodyTextWrap": {
                                "type": "string",
                                "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                "enum": [
                                  "none",
                                  "wrap",
                                  "ellipsis"
                                ]
                              },
                              "bodyTextMaxWidth": {
                                "type": "string",
                                "description": "The maximum width for wrapping text in the node.",
                                "maxLength": 50
                              },
                              "bodyTextOpacity": {
                                "type": "number",
                                "description": "The opacity of the node's body text, including its outline.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "bodyTextBackgroundColor": {
                                "type": "string",
                                "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "bodyTextFontSize": {
                                "type": "number",
                                "description": "The size of the node's body text.",
                                "minimum": 0
                              },
                              "bodyTextColor": {
                                "type": "string",
                                "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "bodyTextFontWeight": {
                                "type": "string",
                                "description": "A CSS font weight to be applied to the node's body text.",
                                "maxLength": 50
                              },
                              "bodyTextHorizontalAlign": {
                                "type": "string",
                                "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                "maxLength": 50
                              },
                              "bodyTextDecoration": {
                                "type": "string",
                                "description": "A CSS text decoration to be applied to the node's body text.",
                                "maxLength": 100
                              },
                              "bodyTextVerticalAlign": {
                                "type": "string",
                                "description": "A CSS vertical alignment to be applied to the node's body text.",
                                "maxLength": 50
                              },
                              "width": {
                                "type": "number",
                                "description": "The width of the node's body or the width of an edge's line.",
                                "minimum": 0
                              },
                              "height": {
                                "type": "number",
                                "description": "The height of the node's body",
                                "minimum": 0
                              },
                              "backgroundImage": {
                                "type": "string",
                                "format": "uri",
                                "description": "The URL that points to the image to show in the node.",
                                "maxLength": 2048
                              },
                              "backgroundColor": {
                                "type": "string",
                                "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "backgroundBlacken": {
                                "type": "number",
                                "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                "maximum": 1,
                                "minimum": -1
                              },
                              "backgroundOpacity": {
                                "type": "number",
                                "description": "The opacity level of the node's background colour",
                                "maximum": 1,
                                "minimum": 0
                              },
                              "backgroundPositionX": {
                                "type": "string",
                                "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundPositionY": {
                                "type": "string",
                                "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundOffsetX": {
                                "type": "string",
                                "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundOffsetY": {
                                "type": "string",
                                "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                "maxLength": 50
                              },
                              "backgroundFit": {
                                "type": "string",
                                "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                "enum": [
                                  "none",
                                  "contain",
                                  "cover"
                                ]
                              },
                              "backgroundClip": {
                                "type": "string",
                                "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                "enum": [
                                  "none",
                                  "node",
                                  "node-border"
                                ]
                              },
                              "backgroundWidthRelativeTo": {
                                "type": "string",
                                "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                "enum": [
                                  "none",
                                  "inner",
                                  "outer"
                                ]
                              },
                              "backgroundHeightRelativeTo": {
                                "type": "string",
                                "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                "enum": [
                                  "none",
                                  "inner",
                                  "outer"
                                ]
                              },
                              "borderWidth": {
                                "type": "number",
                                "description": "The size of the node's border.",
                                "minimum": 0
                              },
                              "borderStyle": {
                                "type": "string",
                                "description": "The style of the node's border",
                                "enum": [
                                  "solid",
                                  "dotted",
                                  "dashed",
                                  "double"
                                ]
                              },
                              "borderColor": {
                                "type": "string",
                                "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "borderOpacity": {
                                "type": "number",
                                "description": "The opacity of the node's border",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "padding": {
                                "type": "number",
                                "description": "The amount of padding around all sides of the node.",
                                "minimum": 0
                              },
                              "textHalign": {
                                "type": "string",
                                "description": "The horizontal alignment of a node's label",
                                "enum": [
                                  "left",
                                  "center",
                                  "right"
                                ]
                              },
                              "textValign": {
                                "type": "string",
                                "description": "The vertical alignment of a node's label",
                                "enum": [
                                  "top",
                                  "center",
                                  "bottom"
                                ]
                              },
                              "ghost": {
                                "type": "string",
                                "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                "default": "no",
                                "enum": [
                                  "yes",
                                  "no"
                                ]
                              },
                              "activeBgColor": {
                                "type": "string",
                                "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.",
                                "maxLength": 100
                              },
                              "activeBgOpacity": {
                                "type": "string",
                                "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                "maxLength": 50
                              },
                              "activeBgSize": {
                                "type": "string",
                                "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                "maxLength": 50
                              },
                              "selectionBoxColor": {
                                "type": "string",
                                "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.",
                                "maxLength": 100
                              },
                              "selectionBoxBorderWidth": {
                                "type": "number",
                                "description": "The size of the border on the selection box. Selector needs to be *core*",
                                "minimum": 0
                              },
                              "selectionBoxOpacity": {
                                "type": "number",
                                "description": "The opacity of the selection box. Selector needs to be *core*",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "outsideTextureBgColor": {
                                "type": "string",
                                "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.",
                                "maxLength": 100
                              },
                              "outsideTextureBgOpacity": {
                                "type": "number",
                                "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "shapePolygonPoints": {
                                "type": "string",
                                "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 )",
                                "maxLength": 2000
                              },
                              "menuBackgroundColor": {
                                "type": "string",
                                "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              },
                              "menuBackgroundOpacity": {
                                "type": "number",
                                "description": "The opacity of the background of the component menu.",
                                "minimum": 0,
                                "maximum": 1
                              },
                              "menuForgroundColor": {
                                "type": "string",
                                "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                "maxLength": 100
                              }
                            }
                          }
                        ]
                      },
                      "status": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "status"
                        },
                        "x-order": 10,
                        "description": "Connection Status",
                        "type": "string",
                        "enum": [
                          "discovered",
                          "registered",
                          "connected",
                          "ignored",
                          "maintenance",
                          "disconnected",
                          "deleted",
                          "not found"
                        ]
                      },
                      "transitionMap": {
                        "type": "object",
                        "description": "Map describing the connection state machine. Each key is a current connection status and its value is the list of states the connection may transition to from that status, along with a description of each transition.",
                        "additionalProperties": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "description": "A single permissible state transition for a connection, describing the next reachable state and the meaning of that transition.",
                            "required": [
                              "nextState"
                            ],
                            "properties": {
                              "nextState": {
                                "description": "The connection state reachable from the current state.",
                                "x-go-name": "NextState",
                                "x-order": 1,
                                "type": "string",
                                "enum": [
                                  "discovered",
                                  "registered",
                                  "connected",
                                  "ignored",
                                  "maintenance",
                                  "disconnected",
                                  "deleted",
                                  "not found"
                                ]
                              },
                              "description": {
                                "type": "string",
                                "description": "Human-readable explanation of when or why this transition occurs.",
                                "maxLength": 1000,
                                "x-oapi-codegen-extra-tags": {
                                  "json": "description,omitempty"
                                },
                                "x-order": 2
                              }
                            }
                          }
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "type:bytes;serializer:json",
                          "db": "-",
                          "json": "transitionMap,omitempty"
                        },
                        "x-order": 18
                      },
                      "owner": {
                        "x-go-name": "Owner",
                        "x-oapi-codegen-extra-tags": {
                          "db": "owner",
                          "json": "owner"
                        },
                        "x-order": 11,
                        "description": "User ID who owns this connection",
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "createdAt": {
                        "description": "Timestamp when the connection was created.",
                        "x-oapi-codegen-extra-tags": {
                          "db": "created_at",
                          "json": "createdAt"
                        },
                        "x-order": 12,
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "updatedAt": {
                        "description": "Timestamp when the connection was last updated.",
                        "x-oapi-codegen-extra-tags": {
                          "db": "updated_at",
                          "json": "updatedAt"
                        },
                        "x-order": 13,
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "deletedAt": {
                        "description": "Timestamp when the connection was soft-deleted, if applicable.",
                        "x-oapi-codegen-extra-tags": {
                          "db": "deleted_at",
                          "json": "deletedAt"
                        },
                        "x-order": 14,
                        "x-go-type": "meshcore.NullTime",
                        "x-go-type-import": {
                          "name": "meshcore",
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "type": "string",
                        "format": "date-time",
                        "nullable": true,
                        "x-go-type-skip-optional-pointer": true
                      },
                      "environments": {
                        "type": "array",
                        "description": "Associated environments for this connection",
                        "items": {
                          "x-go-type": "*environmentv1beta3.Environment",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta3/environment",
                            "name": "environmentv1beta3"
                          },
                          "$id": "https://schemas.meshery.io/environment.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "title": "Environment",
                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                          "additionalProperties": false,
                          "type": "object",
                          "example": {
                            "id": "00000000-0000-0000-0000-000000000000",
                            "schemaVersion": "environments.meshery.io/v1beta3",
                            "name": "Production Environment",
                            "description": "Connections and credentials for the production cluster.",
                            "organizationId": "00000000-0000-0000-0000-000000000000",
                            "owner": "00000000-0000-0000-0000-000000000000",
                            "createdAt": "0001-01-01T00:00:00Z",
                            "metadata": {},
                            "updatedAt": "0001-01-01T00:00:00Z",
                            "deletedAt": null
                          },
                          "required": [
                            "id",
                            "schemaVersion",
                            "name",
                            "description",
                            "organizationId"
                          ],
                          "properties": {
                            "id": {
                              "description": "ID",
                              "x-order": 1,
                              "x-go-name": "ID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "id",
                                "json": "id"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "schemaVersion": {
                              "description": "Specifies the version of the schema to which the environment conforms.",
                              "x-order": 2,
                              "x-oapi-codegen-extra-tags": {
                                "json": "schemaVersion",
                                "db": "-",
                                "gorm": "-"
                              },
                              "default": "environments.meshery.io/v1beta3",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            },
                            "name": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "name",
                                "json": "name"
                              },
                              "x-order": 3,
                              "type": "string",
                              "maxLength": 100,
                              "description": "Environment name"
                            },
                            "description": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "description",
                                "json": "description"
                              },
                              "x-order": 4,
                              "type": "string",
                              "maxLength": 1000,
                              "description": "Environment description"
                            },
                            "organizationId": {
                              "x-go-name": "OrganizationID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "organization_id",
                                "json": "organizationId"
                              },
                              "x-order": 5,
                              "description": "Environment organization ID",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "owner": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "owner",
                                "json": "owner"
                              },
                              "x-order": 6,
                              "description": "Environment owner",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "createdAt": {
                              "description": "Timestamp when the environment was created.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "created_at",
                                "yaml": "created_at",
                                "json": "createdAt"
                              },
                              "x-order": 7,
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "CreatedAt",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "metadata": {
                              "description": "Additional metadata associated with the environment.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "metadata",
                                "json": "metadata"
                              },
                              "x-order": 8,
                              "x-go-type": "core.Map",
                              "x-go-type-skip-optional-pointer": true,
                              "type": "object"
                            },
                            "updatedAt": {
                              "description": "Timestamp when the environment was last updated.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "updated_at",
                                "yaml": "updated_at",
                                "json": "updatedAt"
                              },
                              "x-order": 9,
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "UpdatedAt",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "deletedAt": {
                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                              "nullable": true,
                              "x-oapi-codegen-extra-tags": {
                                "db": "deleted_at",
                                "json": "deletedAt"
                              },
                              "x-go-type": "core.NullTime",
                              "x-go-import": "database/sql",
                              "x-order": 10,
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            }
                          }
                        },
                        "x-oapi-codegen-extra-tags": {
                          "db": "-",
                          "gorm": "-"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "x-order": 15
                      },
                      "schemaVersion": {
                        "description": "Specifies the version of the schema used for the definition.",
                        "x-order": 16,
                        "x-oapi-codegen-extra-tags": {
                          "db": "-",
                          "gorm": "-"
                        },
                        "default": "connections.meshery.io/v1beta3",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 100,
                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                        "example": [
                          "v1",
                          "v1alpha1",
                          "v2beta3",
                          "v1.custom-suffix",
                          "models.meshery.io/v1beta1",
                          "capability.meshery.io/v1alpha1"
                        ]
                      }
                    }
                  },
                  "entityType": {
                    "type": "string",
                    "description": "Type of the entity being registered (e.g. `component`, `relationship`).",
                    "maxLength": 255
                  },
                  "entity": {
                    "type": "string",
                    "format": "byte",
                    "description": "Base64-encoded JSON definition of the entity being registered."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Relationship registration processed."
          },
          "400": {
            "description": "Bad request."
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/registrants": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "getRegistryRegistrants",
        "summary": "List registrants",
        "description": "Returns a paginated list of registrants (hosts) that have registered capabilities into the registry, with a summary count of the entities each has registered.",
        "security": [],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "Zero-indexed page number of the result set.",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of items per page, or `all` to return every item.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "Filter results by a case-insensitive substring match on name.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Field to order the results by.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort direction (`asc` or `desc`).",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of registrants.",
            "content": {
              "application/json": {
                "schema": {
                  "description": "A page of registrants.",
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
                      "properties": {
                        "page": {
                          "type": "integer",
                          "description": "Current page number of the result set.",
                          "minimum": 0
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Number of items in the page.",
                          "minimum": 0
                        },
                        "totalCount": {
                          "type": "integer",
                          "description": "Total number of items available.",
                          "minimum": 0
                        },
                        "page_size": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `pageSize`.",
                          "minimum": 0,
                          "deprecated": true
                        },
                        "total_count": {
                          "type": "integer",
                          "description": "Deprecated snake_case alias of `totalCount`.",
                          "minimum": 0,
                          "deprecated": true
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "registrants": {
                          "type": "array",
                          "items": {
                            "description": "A registrant (host) that has registered capabilities into the registry, with a summary of the entities it has registered.",
                            "allOf": [
                              {
                                "$id": "https://schemas.meshery.io/connection.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "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",
                                "additionalProperties": false,
                                "type": "object",
                                "required": [
                                  "id",
                                  "schemaVersion",
                                  "name",
                                  "type",
                                  "subType",
                                  "kind",
                                  "status"
                                ],
                                "properties": {
                                  "id": {
                                    "description": "Connection ID",
                                    "x-order": 1,
                                    "x-go-name": "ID",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "id",
                                      "yaml": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "name": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "name",
                                      "yaml": "name"
                                    },
                                    "x-order": 2,
                                    "type": "string",
                                    "description": "Connection Name"
                                  },
                                  "credentialId": {
                                    "x-go-name": "CredentialID",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "credential_id",
                                      "yaml": "credentialId"
                                    },
                                    "x-order": 3,
                                    "description": "Associated Credential ID",
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "type": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "type",
                                      "yaml": "type"
                                    },
                                    "x-order": 4,
                                    "type": "string",
                                    "description": "Connection Type (platform, telemetry, collaboration)"
                                  },
                                  "subType": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "sub_type",
                                      "yaml": "subType"
                                    },
                                    "x-order": 5,
                                    "type": "string",
                                    "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                  },
                                  "kind": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "kind",
                                      "yaml": "kind"
                                    },
                                    "x-order": 6,
                                    "type": "string",
                                    "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                  },
                                  "metadata": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "metadata",
                                      "yaml": "metadata"
                                    },
                                    "x-order": 7,
                                    "x-go-type": "core.Map",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/core"
                                    },
                                    "x-go-type-skip-optional-pointer": true,
                                    "type": "object",
                                    "description": "Additional connection metadata"
                                  },
                                  "status": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "status",
                                      "yaml": "status"
                                    },
                                    "x-order": 8,
                                    "description": "Connection Status",
                                    "type": "string",
                                    "enum": [
                                      "discovered",
                                      "registered",
                                      "connected",
                                      "ignored",
                                      "maintenance",
                                      "disconnected",
                                      "deleted",
                                      "not found"
                                    ]
                                  },
                                  "user_id": {
                                    "x-go-name": "UserID",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "owner",
                                      "yaml": "user_id"
                                    },
                                    "x-order": 9,
                                    "description": "User ID who owns this connection",
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "created_at": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "created_at"
                                    },
                                    "x-order": 10,
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "updated_at": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updated_at"
                                    },
                                    "x-order": 11,
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deleted_at": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "yaml": "deleted_at"
                                    },
                                    "x-order": 12,
                                    "description": "SQL null Timestamp to handle null values of time.",
                                    "x-go-type": "meshcore.NullTime",
                                    "x-go-type-import": {
                                      "name": "meshcore",
                                      "path": "github.com/meshery/schemas/models/core"
                                    },
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "environments": {
                                    "type": "array",
                                    "description": "Associated environments for this connection",
                                    "items": {
                                      "x-go-type": "*environmentv1beta1.Environment",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                        "name": "environmentv1beta1"
                                      },
                                      "$id": "https://schemas.meshery.io/environment.yaml",
                                      "$schema": "http://json-schema.org/draft-07/schema#",
                                      "title": "Environment",
                                      "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                      "additionalProperties": false,
                                      "type": "object",
                                      "example": {
                                        "id": "00000000-0000-0000-0000-000000000000",
                                        "schemaVersion": "environments.meshery.io/v1beta1",
                                        "name": "Production Environment",
                                        "description": "Connections and credentials for the production cluster.",
                                        "organization_id": "00000000-0000-0000-0000-000000000000",
                                        "owner": "00000000-0000-0000-0000-000000000000",
                                        "created_at": "0001-01-01T00:00:00Z",
                                        "metadata": {},
                                        "updated_at": "0001-01-01T00:00:00Z",
                                        "deleted_at": null
                                      },
                                      "required": [
                                        "id",
                                        "schemaVersion",
                                        "name",
                                        "description",
                                        "organization_id"
                                      ],
                                      "properties": {
                                        "id": {
                                          "description": "ID",
                                          "x-order": 1,
                                          "x-go-name": "ID",
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "id",
                                            "yaml": "id"
                                          },
                                          "type": "string",
                                          "format": "uuid",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "schemaVersion": {
                                          "description": "Specifies the version of the schema to which the environment conforms.",
                                          "x-order": 2,
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "schemaVersion",
                                            "db": "-",
                                            "gorm": "-"
                                          },
                                          "default": "environments.meshery.io/v1beta1",
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 100,
                                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                          "example": [
                                            "v1",
                                            "v1alpha1",
                                            "v2beta3",
                                            "v1.custom-suffix",
                                            "models.meshery.io/v1beta1",
                                            "capability.meshery.io/v1alpha1"
                                          ]
                                        },
                                        "name": {
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "name",
                                            "yaml": "name"
                                          },
                                          "x-order": 3,
                                          "type": "string",
                                          "maxLength": 100,
                                          "description": "Environment name"
                                        },
                                        "description": {
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "description",
                                            "yaml": "description"
                                          },
                                          "x-order": 4,
                                          "type": "string",
                                          "maxLength": 1000,
                                          "description": "Environment description"
                                        },
                                        "organization_id": {
                                          "x-go-name": "OrganizationID",
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "organization_id",
                                            "yaml": "organization_id"
                                          },
                                          "x-order": 5,
                                          "description": "Environment organization ID",
                                          "type": "string",
                                          "format": "uuid",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "owner": {
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "owner",
                                            "yaml": "owner"
                                          },
                                          "x-order": 6,
                                          "description": "Environment owner",
                                          "type": "string",
                                          "format": "uuid",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "created_at": {
                                          "x-order": 7,
                                          "description": "Timestamp when the resource was created.",
                                          "x-go-type": "time.Time",
                                          "type": "string",
                                          "format": "date-time",
                                          "x-go-name": "CreatedAt",
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "created_at",
                                            "yaml": "created_at"
                                          },
                                          "x-go-type-skip-optional-pointer": true
                                        },
                                        "metadata": {
                                          "description": "Additional metadata associated with the environment.",
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "metadata",
                                            "yaml": "metadata"
                                          },
                                          "x-order": 8,
                                          "x-go-type": "core.Map",
                                          "x-go-type-skip-optional-pointer": true,
                                          "type": "object"
                                        },
                                        "updated_at": {
                                          "x-order": 9,
                                          "description": "Timestamp when the resource was updated.",
                                          "x-go-type": "time.Time",
                                          "type": "string",
                                          "format": "date-time",
                                          "x-go-name": "UpdatedAt",
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "updated_at",
                                            "yaml": "updated_at"
                                          },
                                          "x-go-type-skip-optional-pointer": true
                                        },
                                        "deleted_at": {
                                          "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                          "nullable": true,
                                          "x-oapi-codegen-extra-tags": {
                                            "db": "deleted_at",
                                            "yaml": "deleted_at"
                                          },
                                          "x-go-type": "core.NullTime",
                                          "x-go-import": "database/sql",
                                          "x-order": 10,
                                          "x-go-type-import": {
                                            "name": "meshcore",
                                            "path": "github.com/meshery/schemas/models/core"
                                          },
                                          "type": "string",
                                          "format": "date-time",
                                          "x-go-type-skip-optional-pointer": true
                                        }
                                      }
                                    },
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "-",
                                      "yaml": "environments",
                                      "gorm": "-"
                                    },
                                    "x-go-type-skip-optional-pointer": true,
                                    "x-order": 13
                                  },
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema used for the definition.",
                                    "x-order": 14,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "db": "-",
                                      "gorm": "-"
                                    },
                                    "default": "connections.meshery.io/v1beta1",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  }
                                }
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "summary": {
                                    "type": "object",
                                    "description": "Counts of the entities a registrant has registered.",
                                    "properties": {
                                      "models": {
                                        "type": "integer",
                                        "description": "Number of models registered by this registrant.",
                                        "minimum": 0
                                      },
                                      "components": {
                                        "type": "integer",
                                        "description": "Number of components registered by this registrant.",
                                        "minimum": 0
                                      },
                                      "relationships": {
                                        "type": "integer",
                                        "description": "Number of relationships registered by this registrant.",
                                        "minimum": 0
                                      },
                                      "policies": {
                                        "type": "integer",
                                        "description": "Number of policies registered by this registrant.",
                                        "minimum": 0
                                      }
                                    }
                                  }
                                }
                              }
                            ]
                          },
                          "description": "The registrants matching the query."
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/register": {
      "post": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "registerRegistryEntities",
        "summary": "Import entities into the registry",
        "description": "Imports models and their components and relationships into the capabilities registry from a file, URL, or CSV set, optionally registering them for immediate use.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "importBody",
                  "uploadType",
                  "register"
                ],
                "properties": {
                  "importBody": {
                    "oneOf": [
                      {
                        "title": "File Import",
                        "type": "object",
                        "required": [
                          "fileName",
                          "modelFile"
                        ],
                        "properties": {
                          "fileName": {
                            "type": "string",
                            "description": "Name of the file being uploaded.",
                            "maxLength": 255
                          },
                          "modelFile": {
                            "type": "string",
                            "description": "Supported model file formats are: .tar, .tar.gz, and .tgz. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"
                          }
                        }
                      },
                      {
                        "title": "URL Import",
                        "type": "object",
                        "required": [
                          "url"
                        ],
                        "properties": {
                          "url": {
                            "type": "string",
                            "format": "uri",
                            "description": "A direct URL to a single model file, for example: https://raw.github.com/your-model-file.tar. Supported model file formats are: .tar, .tar.gz, and .tgz. \\n\\nFor bulk import of your model use the GitHub connection or CSV files. See [Import Models Documentation](https://docs.meshery.io/guides/configuration-management/importing-models#import-models-using-meshery-ui) for details"
                          }
                        }
                      },
                      {
                        "title": "CSV Import",
                        "type": "object",
                        "required": [
                          "modelCsv",
                          "componentCsv",
                          "relationshipCsv"
                        ],
                        "properties": {
                          "modelCsv": {
                            "type": "string",
                            "format": "binary",
                            "description": "Upload a CSV file containing model definitions"
                          },
                          "componentCsv": {
                            "type": "string",
                            "format": "binary",
                            "description": "Upload a CSV file containing component definitions"
                          },
                          "relationshipCsv": {
                            "type": "string",
                            "format": "binary",
                            "description": "Upload a CSV file containing relationship definitions"
                          }
                        }
                      },
                      {
                        "title": "Model Create",
                        "type": "object",
                        "required": [
                          "model",
                          "url"
                        ],
                        "properties": {
                          "url": {
                            "type": "string",
                            "description": "URI to the source code or package of the model.",
                            "format": "uri",
                            "oneOf": [
                              {
                                "title": "GitHub",
                                "type": "string",
                                "pattern": "^git://github\\.com/[\\w.-]+/[\\w.-]+(/[\\w.-]+/[\\w/-]+)?$",
                                "description": "Git protocol URL for GitHub repository or specific resource path",
                                "example": "git://github.com/cert-manager/cert-manager/master/deploy/crds",
                                "x-metadata": {
                                  "uiType": "url",
                                  "validationHint": "Enter a git protocol URL (e.g., git://github.com/owner/repo)"
                                }
                              },
                              {
                                "title": "Artifact Hub",
                                "type": "string",
                                "pattern": "^https:\\/\\/artifacthub\\.io\\/packages\\/(search\\?ts_query_web=[\\w.-]+|[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+)$",
                                "description": "Artifact Hub package URL or search query URL with model name parameter",
                                "example": "https://artifacthub.io/packages/search?ts_query_web={model-name}",
                                "x-metadata": {
                                  "uiType": "url",
                                  "validationHint": "Enter an Artifact Hub URL (e.g., https://artifacthub.io/packages/search?ts_query_web={meshery-operator})"
                                }
                              }
                            ]
                          }
                        }
                      }
                    ]
                  },
                  "uploadType": {
                    "type": "string",
                    "title": "Upload method",
                    "x-enum-casing-exempt": true,
                    "enum": [
                      "file",
                      "urlImport",
                      "csv",
                      "url"
                    ],
                    "enumDescriptions": [
                      "Upload a model file (.tar, .tar.gz, .tgz) from your local system",
                      "Import a model file using a direct URL to the source",
                      "Upload separate CSV files for model definitions, components, and their relationships"
                    ],
                    "description": "Choose the method you prefer to upload your model file. Select 'File Import' or 'CSV Import' if you have the file on your local system or 'URL Import' if you have the file hosted online."
                  },
                  "register": {
                    "type": "boolean",
                    "nullable": false,
                    "description": "The register of the importrequest."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Import processed; response summarizes registered entities and failures.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "Summary of an import into the capabilities registry.",
                  "properties": {
                    "entityCount": {
                      "type": "object",
                      "description": "Counts of imported and failed entities by type.",
                      "properties": {
                        "compCount": {
                          "type": "integer",
                          "description": "Number of components imported.",
                          "minimum": 0
                        },
                        "relCount": {
                          "type": "integer",
                          "description": "Number of relationships imported.",
                          "minimum": 0
                        },
                        "modelCount": {
                          "type": "integer",
                          "description": "Number of models imported.",
                          "minimum": 0
                        },
                        "errCompCount": {
                          "type": "integer",
                          "description": "Number of components that failed to import.",
                          "minimum": 0
                        },
                        "errRelCount": {
                          "type": "integer",
                          "description": "Number of relationships that failed to import.",
                          "minimum": 0
                        },
                        "errModelCount": {
                          "type": "integer",
                          "description": "Number of models that failed to import.",
                          "minimum": 0
                        },
                        "totalErrCount": {
                          "type": "integer",
                          "description": "Total number of entities that failed to import.",
                          "minimum": 0
                        }
                      }
                    },
                    "errMsg": {
                      "type": "string",
                      "description": "Aggregated, human-readable description of import failures, if any.",
                      "maxLength": 65536
                    },
                    "entityTypeSummary": {
                      "type": "object",
                      "description": "Per-type summaries of imported entities and failures.",
                      "properties": {
                        "successfulComponents": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": true
                          },
                          "description": "Components successfully imported."
                        },
                        "successfulRelationships": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": true
                          },
                          "description": "Relationships successfully imported."
                        },
                        "successfulModels": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": true
                          },
                          "description": "Models successfully imported."
                        },
                        "unsuccessfulComponentNames": {
                          "type": "array",
                          "items": {},
                          "description": "Names of entities that failed to import, with their errors."
                        }
                      }
                    },
                    "modelName": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "description": "Names of the models processed by the import."
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "401": {
            "description": "Expired JWT token used or insufficient privilege",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/generate": {
      "post": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "generateRegistryComponents",
        "summary": "Generate components for packages",
        "description": "Generates component definitions for the named packages (via Artifact Hub), optionally registering the generated components into the registry.",
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "description": "Request to generate components for a set of packages.",
                "required": [
                  "data"
                ],
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "name"
                      ],
                      "properties": {
                        "name": {
                          "type": "string",
                          "description": "Name of the package (Artifact Hub package name) to generate components for.",
                          "maxLength": 255
                        },
                        "register": {
                          "type": "boolean",
                          "description": "Whether to register the generated components into the registry."
                        }
                      }
                    },
                    "description": "Packages for which to generate components."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Generation results, one item per requested package.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "description": "Generation result for a single requested package.",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "Name of the package the components were generated for.",
                        "maxLength": 255
                      },
                      "components": {
                        "type": "array",
                        "items": {
                          "$id": "https://schemas.meshery.io/component.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                          "additionalProperties": false,
                          "type": "object",
                          "properties": {
                            "id": {
                              "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                              "x-order": 1,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "id",
                                "json": "id"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "schemaVersion": {
                              "x-order": 2,
                              "description": "Specifies the version of the schema to which the component definition conforms.",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "schemaVersion",
                                "json": "schemaVersion"
                              },
                              "default": "components.meshery.io/v1beta3",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            },
                            "version": {
                              "x-order": 3,
                              "description": "Version of the component definition.",
                              "minLength": 1,
                              "maxLength": 50,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "version",
                                "json": "version"
                              },
                              "type": "string",
                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                            },
                            "displayName": {
                              "x-order": 4,
                              "description": "Name of the component in human-readable format.",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "displayName",
                                "json": "displayName"
                              },
                              "type": "string",
                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                            },
                            "description": {
                              "x-order": 5,
                              "type": "string",
                              "description": "A written representation of the purpose and characteristics of the component.",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "description",
                                "json": "description"
                              },
                              "maxLength": 5000
                            },
                            "format": {
                              "x-order": 6,
                              "type": "string",
                              "enum": [
                                "JSON",
                                "CUE"
                              ],
                              "default": "JSON",
                              "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "format",
                                "json": "format"
                              }
                            },
                            "model": {
                              "x-go-type": "*modelv1beta1.ModelDefinition",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/v1beta1/model",
                                "name": "modelv1beta1"
                              },
                              "x-order": 7,
                              "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",
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "foreignKey:ModelID;references:ID",
                                "json": "model",
                                "yaml": "model"
                              },
                              "$id": "https://schemas.meshery.io/model.yaml",
                              "$schema": "http://json-schema.org/draft-07/schema#",
                              "additionalProperties": false,
                              "type": "object",
                              "properties": {
                                "id": {
                                  "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                                  "x-order": 1,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "id",
                                    "json": "id"
                                  },
                                  "type": "string",
                                  "format": "uuid",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "schemaVersion": {
                                  "description": "Specifies the version of the schema used for the definition.",
                                  "x-order": 2,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "schemaVersion",
                                    "json": "schemaVersion"
                                  },
                                  "default": "models.meshery.io/v1beta1",
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 100,
                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                  "example": [
                                    "v1",
                                    "v1alpha1",
                                    "v2beta3",
                                    "v1.custom-suffix",
                                    "models.meshery.io/v1beta1",
                                    "capability.meshery.io/v1alpha1"
                                  ]
                                },
                                "version": {
                                  "description": "Version of the model definition.",
                                  "type": "string",
                                  "x-order": 3,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "version",
                                    "json": "version"
                                  },
                                  "minLength": 5,
                                  "maxLength": 100,
                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "The unique name for the model within the scope of a registrant.",
                                  "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                                  "pattern": "^[a-z0-9-]+$",
                                  "examples": [
                                    "cert-manager"
                                  ],
                                  "x-order": 4,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "name",
                                    "json": "name"
                                  },
                                  "default": "untitled-model"
                                },
                                "displayName": {
                                  "description": "Human-readable name for the model.",
                                  "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "type": "string",
                                  "pattern": "^[a-zA-Z0-9 ]+$",
                                  "examples": [
                                    "Cert Manager"
                                  ],
                                  "x-order": 5,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "displayName",
                                    "json": "displayName"
                                  },
                                  "default": "Untitled Model"
                                },
                                "description": {
                                  "type": "string",
                                  "default": "A new Meshery model.",
                                  "description": "Description of the model.",
                                  "minLength": 1,
                                  "maxLength": 1000,
                                  "x-order": 6,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "description,omitempty",
                                    "json": "description,omitempty"
                                  }
                                },
                                "status": {
                                  "type": "string",
                                  "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                                  "enum": [
                                    "ignored",
                                    "enabled",
                                    "duplicate"
                                  ],
                                  "x-order": 7,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "status",
                                    "json": "status"
                                  },
                                  "default": "enabled"
                                },
                                "registrant": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "registrant",
                                    "json": "registrant",
                                    "gorm": "foreignKey:RegistrantId;references:ID"
                                  },
                                  "x-order": 8,
                                  "x-go-type": "connectionv1beta1.Connection",
                                  "x-go-type-import": {
                                    "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                    "name": "connectionv1beta1"
                                  },
                                  "$id": "https://schemas.meshery.io/connection.yaml",
                                  "$schema": "http://json-schema.org/draft-07/schema#",
                                  "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",
                                  "additionalProperties": false,
                                  "type": "object",
                                  "required": [
                                    "id",
                                    "schemaVersion",
                                    "name",
                                    "type",
                                    "subType",
                                    "kind",
                                    "status"
                                  ],
                                  "properties": {
                                    "id": {
                                      "description": "Connection ID",
                                      "x-order": 1,
                                      "x-go-name": "ID",
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "id",
                                        "yaml": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "name": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "name",
                                        "yaml": "name"
                                      },
                                      "x-order": 2,
                                      "type": "string",
                                      "description": "Connection Name"
                                    },
                                    "credentialId": {
                                      "x-go-name": "CredentialID",
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "credential_id",
                                        "yaml": "credentialId"
                                      },
                                      "x-order": 3,
                                      "description": "Associated Credential ID",
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "type": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "type",
                                        "yaml": "type"
                                      },
                                      "x-order": 4,
                                      "type": "string",
                                      "description": "Connection Type (platform, telemetry, collaboration)"
                                    },
                                    "subType": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "sub_type",
                                        "yaml": "subType"
                                      },
                                      "x-order": 5,
                                      "type": "string",
                                      "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                    },
                                    "kind": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "kind",
                                        "yaml": "kind"
                                      },
                                      "x-order": 6,
                                      "type": "string",
                                      "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                    },
                                    "metadata": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "metadata",
                                        "yaml": "metadata"
                                      },
                                      "x-order": 7,
                                      "x-go-type": "core.Map",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/core"
                                      },
                                      "x-go-type-skip-optional-pointer": true,
                                      "type": "object",
                                      "description": "Additional connection metadata"
                                    },
                                    "status": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "status",
                                        "yaml": "status"
                                      },
                                      "x-order": 8,
                                      "description": "Connection Status",
                                      "type": "string",
                                      "enum": [
                                        "discovered",
                                        "registered",
                                        "connected",
                                        "ignored",
                                        "maintenance",
                                        "disconnected",
                                        "deleted",
                                        "not found"
                                      ]
                                    },
                                    "user_id": {
                                      "x-go-name": "UserID",
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "owner",
                                        "yaml": "user_id"
                                      },
                                      "x-order": 9,
                                      "description": "User ID who owns this connection",
                                      "type": "string",
                                      "format": "uuid",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "created_at": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "created_at",
                                        "yaml": "created_at"
                                      },
                                      "x-order": 10,
                                      "type": "string",
                                      "format": "date-time",
                                      "x-go-type-skip-optional-pointer": true
                                    },
                                    "updated_at": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "updated_at",
                                        "yaml": "updated_at"
                                      },
                                      "x-order": 11,
                                      "type": "string",
                                      "format": "date-time",
                                      "x-go-type-skip-optional-pointer": true
                                    },
                                    "deleted_at": {
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "deleted_at",
                                        "yaml": "deleted_at"
                                      },
                                      "x-order": 12,
                                      "description": "SQL null Timestamp to handle null values of time.",
                                      "x-go-type": "meshcore.NullTime",
                                      "x-go-type-import": {
                                        "name": "meshcore",
                                        "path": "github.com/meshery/schemas/models/core"
                                      },
                                      "type": "string",
                                      "format": "date-time",
                                      "x-go-type-skip-optional-pointer": true
                                    },
                                    "environments": {
                                      "type": "array",
                                      "description": "Associated environments for this connection",
                                      "items": {
                                        "x-go-type": "*environmentv1beta1.Environment",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                          "name": "environmentv1beta1"
                                        },
                                        "$id": "https://schemas.meshery.io/environment.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "title": "Environment",
                                        "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "example": {
                                          "id": "00000000-0000-0000-0000-000000000000",
                                          "schemaVersion": "environments.meshery.io/v1beta1",
                                          "name": "Production Environment",
                                          "description": "Connections and credentials for the production cluster.",
                                          "organization_id": "00000000-0000-0000-0000-000000000000",
                                          "owner": "00000000-0000-0000-0000-000000000000",
                                          "created_at": "0001-01-01T00:00:00Z",
                                          "metadata": {},
                                          "updated_at": "0001-01-01T00:00:00Z",
                                          "deleted_at": null
                                        },
                                        "required": [
                                          "id",
                                          "schemaVersion",
                                          "name",
                                          "description",
                                          "organization_id"
                                        ],
                                        "properties": {
                                          "id": {
                                            "description": "ID",
                                            "x-order": 1,
                                            "x-go-name": "ID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "id",
                                              "yaml": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema to which the environment conforms.",
                                            "x-order": 2,
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "schemaVersion",
                                              "db": "-",
                                              "gorm": "-"
                                            },
                                            "default": "environments.meshery.io/v1beta1",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          },
                                          "name": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "name",
                                              "yaml": "name"
                                            },
                                            "x-order": 3,
                                            "type": "string",
                                            "maxLength": 100,
                                            "description": "Environment name"
                                          },
                                          "description": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "description",
                                              "yaml": "description"
                                            },
                                            "x-order": 4,
                                            "type": "string",
                                            "maxLength": 1000,
                                            "description": "Environment description"
                                          },
                                          "organization_id": {
                                            "x-go-name": "OrganizationID",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "organization_id",
                                              "yaml": "organization_id"
                                            },
                                            "x-order": 5,
                                            "description": "Environment organization ID",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "owner": {
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "owner",
                                              "yaml": "owner"
                                            },
                                            "x-order": 6,
                                            "description": "Environment owner",
                                            "type": "string",
                                            "format": "uuid",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "created_at": {
                                            "x-order": 7,
                                            "description": "Timestamp when the resource was created.",
                                            "x-go-type": "time.Time",
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-name": "CreatedAt",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "created_at",
                                              "yaml": "created_at"
                                            },
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "metadata": {
                                            "description": "Additional metadata associated with the environment.",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "metadata",
                                              "yaml": "metadata"
                                            },
                                            "x-order": 8,
                                            "x-go-type": "core.Map",
                                            "x-go-type-skip-optional-pointer": true,
                                            "type": "object"
                                          },
                                          "updated_at": {
                                            "x-order": 9,
                                            "description": "Timestamp when the resource was updated.",
                                            "x-go-type": "time.Time",
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-name": "UpdatedAt",
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "updated_at",
                                              "yaml": "updated_at"
                                            },
                                            "x-go-type-skip-optional-pointer": true
                                          },
                                          "deleted_at": {
                                            "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                            "nullable": true,
                                            "x-oapi-codegen-extra-tags": {
                                              "db": "deleted_at",
                                              "yaml": "deleted_at"
                                            },
                                            "x-go-type": "core.NullTime",
                                            "x-go-import": "database/sql",
                                            "x-order": 10,
                                            "x-go-type-import": {
                                              "name": "meshcore",
                                              "path": "github.com/meshery/schemas/models/core"
                                            },
                                            "type": "string",
                                            "format": "date-time",
                                            "x-go-type-skip-optional-pointer": true
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "db": "-",
                                        "yaml": "environments",
                                        "gorm": "-"
                                      },
                                      "x-go-type-skip-optional-pointer": true,
                                      "x-order": 13
                                    },
                                    "schemaVersion": {
                                      "description": "Specifies the version of the schema used for the definition.",
                                      "x-order": 14,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "schemaVersion",
                                        "db": "-",
                                        "gorm": "-"
                                      },
                                      "default": "connections.meshery.io/v1beta1",
                                      "type": "string",
                                      "minLength": 2,
                                      "maxLength": 100,
                                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                      "example": [
                                        "v1",
                                        "v1alpha1",
                                        "v2beta3",
                                        "v1.custom-suffix",
                                        "models.meshery.io/v1beta1",
                                        "capability.meshery.io/v1alpha1"
                                      ]
                                    }
                                  }
                                },
                                "registrantId": {
                                  "description": "ID of the registrant.",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "connection_id",
                                    "json": "connection_id",
                                    "gorm": "column:connection_id"
                                  },
                                  "x-order": 8,
                                  "type": "string",
                                  "format": "uuid",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "categoryId": {
                                  "description": "ID of the category.",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "-",
                                    "json": "-",
                                    "gorm": "categoryID"
                                  },
                                  "x-order": 8,
                                  "type": "string",
                                  "format": "uuid",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "category": {
                                  "x-order": 9,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "category",
                                    "json": "category",
                                    "gorm": "foreignKey:CategoryId;references:ID"
                                  },
                                  "x-go-type": "categoryv1beta1.CategoryDefinition",
                                  "x-go-type-import": {
                                    "path": "github.com/meshery/schemas/models/v1beta1/category",
                                    "name": "categoryv1beta1"
                                  },
                                  "$id": "https://schemas.meshery.io/category.yaml",
                                  "$schema": "http://json-schema.org/draft-07/schema#",
                                  "type": "object",
                                  "additionalProperties": false,
                                  "description": "Category of the model.",
                                  "required": [
                                    "id",
                                    "name",
                                    "metadata"
                                  ],
                                  "properties": {
                                    "id": {
                                      "x-order": 1,
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "name": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "name",
                                        "json": "name",
                                        "gorm": "name"
                                      },
                                      "default": "Uncategorized",
                                      "description": "The category of the model that determines the main grouping.",
                                      "helperText": "Select a model category",
                                      "enum": [
                                        "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"
                                      ],
                                      "x-order": 2
                                    },
                                    "metadata": {
                                      "description": "Additional metadata associated with the category.",
                                      "type": "object",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "metadata,omitempty",
                                        "json": "metadata,omitempty",
                                        "gorm": "type:bytes;serializer:json"
                                      },
                                      "x-order": 3
                                    }
                                  }
                                },
                                "subCategory": {
                                  "x-order": 10,
                                  "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                                  "x-go-type-import": {
                                    "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                    "name": "subcategoryv1beta1"
                                  },
                                  "$id": "https://schemas.meshery.io/category.yaml",
                                  "$schema": "http://json-schema.org/draft-07/schema#",
                                  "type": "string",
                                  "title": "SubCategory",
                                  "description": "Sub category of the model determines the secondary grouping.",
                                  "default": "Uncategorized",
                                  "enum": [
                                    "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"
                                  ],
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "subCategory",
                                    "json": "subCategory"
                                  }
                                },
                                "metadata": {
                                  "type": "object",
                                  "description": "Metadata containing additional information associated with the model.",
                                  "required": [
                                    "svgWhite",
                                    "svgColor"
                                  ],
                                  "properties": {
                                    "capabilities": {
                                      "type": "array",
                                      "description": "Capabilities associated with the model",
                                      "items": {
                                        "x-go-type": "capabilityv1alpha1.Capability",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                          "name": "capabilityv1alpha1"
                                        },
                                        "$id": "https://schemas.meshery.io/capability.yaml",
                                        "$schema": "http://json-schema.org/draft-07/schema#",
                                        "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                        "additionalProperties": false,
                                        "type": "object",
                                        "required": [
                                          "description",
                                          "schemaVersion",
                                          "version",
                                          "displayName",
                                          "kind",
                                          "type",
                                          "subType",
                                          "entityState",
                                          "key",
                                          "status"
                                        ],
                                        "x-oapi-codegen-extra-tags": {
                                          "gorm": "type:bytes;serializer:json"
                                        },
                                        "properties": {
                                          "schemaVersion": {
                                            "description": "Specifies the version of the schema to which the capability definition conforms.",
                                            "type": "string",
                                            "minLength": 2,
                                            "maxLength": 100,
                                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                            "example": [
                                              "v1",
                                              "v1alpha1",
                                              "v2beta3",
                                              "v1.custom-suffix",
                                              "models.meshery.io/v1beta1",
                                              "capability.meshery.io/v1alpha1"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the capability definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "description": "Name of the capability in human-readible format.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "description": {
                                            "type": "string",
                                            "description": "A written representation of the purpose and characteristics of the capability.",
                                            "maxLength": 5000
                                          },
                                          "kind": {
                                            "description": "Top-level categorization of the capability",
                                            "additionalProperties": false,
                                            "anyOf": [
                                              {
                                                "const": "action",
                                                "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                              },
                                              {
                                                "const": "mutate",
                                                "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                              },
                                              {
                                                "const": "view",
                                                "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                              },
                                              {
                                                "const": "interaction",
                                                "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                              }
                                            ],
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "type": {
                                            "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "subType": {
                                            "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "key": {
                                            "description": "Key that backs the capability.",
                                            "type": "string",
                                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                          },
                                          "entityState": {
                                            "description": "State of the entity in which the capability is applicable.",
                                            "type": "array",
                                            "items": {
                                              "type": "string",
                                              "enum": [
                                                "declaration",
                                                "instance"
                                              ],
                                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                              "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                            }
                                          },
                                          "status": {
                                            "type": "string",
                                            "description": "Status of the capability",
                                            "default": "enabled",
                                            "enum": [
                                              "enabled",
                                              "disabled"
                                            ]
                                          },
                                          "metadata": {
                                            "type": "object",
                                            "description": "Metadata contains additional information associated with the capability. Extension point.",
                                            "additionalProperties": true
                                          }
                                        },
                                        "default": [
                                          {
                                            "description": "Configure the visual styles for the component",
                                            "displayName": "Styling",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1beta1",
                                            "status": "enabled",
                                            "subType": "",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Change the shape of the component",
                                            "displayName": "Change Shape",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1beta1",
                                            "status": "enabled",
                                            "subType": "shape",
                                            "type": "style",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Drag and Drop a component into a parent component in graph view",
                                            "displayName": "Compound Drag And Drop",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "interaction",
                                            "schemaVersion": "capability.meshery.io/v1beta1",
                                            "status": "enabled",
                                            "subType": "compoundDnd",
                                            "type": "graph",
                                            "version": "0.7.0"
                                          },
                                          {
                                            "description": "Add text to nodes body",
                                            "displayName": "Body Text",
                                            "entityState": [
                                              "declaration"
                                            ],
                                            "key": "",
                                            "kind": "mutate",
                                            "schemaVersion": "capability.meshery.io/v1beta1",
                                            "status": "enabled",
                                            "subType": "body-text",
                                            "type": "style",
                                            "version": "0.7.0"
                                          }
                                        ]
                                      },
                                      "x-order": 1
                                    },
                                    "isAnnotation": {
                                      "type": "boolean",
                                      "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "isAnnotation",
                                        "json": "isAnnotation"
                                      },
                                      "x-order": 2,
                                      "default": false
                                    },
                                    "primaryColor": {
                                      "type": "string",
                                      "description": "Primary color associated with the model.",
                                      "minLength": 1,
                                      "maxLength": 50,
                                      "default": "#00b39f",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "primaryColor",
                                        "json": "primaryColor"
                                      },
                                      "x-order": 3
                                    },
                                    "secondaryColor": {
                                      "type": "string",
                                      "description": "Secondary color associated with the model.",
                                      "minLength": 1,
                                      "maxLength": 50,
                                      "default": "#00D3A9",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "secondaryColor",
                                        "json": "secondaryColor"
                                      },
                                      "x-order": 4
                                    },
                                    "svgWhite": {
                                      "type": "string",
                                      "description": "SVG representation of the model in white color.",
                                      "minLength": 1,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgWhite",
                                        "json": "svgWhite"
                                      },
                                      "x-order": 5,
                                      "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>"
                                    },
                                    "svgColor": {
                                      "type": "string",
                                      "description": "SVG representation of the model in colored format.",
                                      "minLength": 1,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgColor",
                                        "json": "svgColor"
                                      },
                                      "x-order": 6,
                                      "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>"
                                    },
                                    "svgComplete": {
                                      "type": "string",
                                      "description": "SVG representation of the complete model.",
                                      "minLength": 1,
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "svgComplete",
                                        "json": "svgComplete"
                                      },
                                      "x-order": 7
                                    },
                                    "shape": {
                                      "x-order": 8,
                                      "type": "string",
                                      "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)",
                                      "enum": [
                                        "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"
                                      ]
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json",
                                    "json": "metadata",
                                    "yaml": "metadata"
                                  },
                                  "x-order": 11,
                                  "additionalProperties": true
                                },
                                "model": {
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "x-order": 12,
                                  "type": "object",
                                  "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                  "required": [
                                    "version"
                                  ],
                                  "properties": {
                                    "version": {
                                      "description": "Version of the model as defined by the registrant.",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "version"
                                      },
                                      "x-order": 1,
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    }
                                  }
                                },
                                "relationships": {
                                  "type": "array",
                                  "x-go-type": "interface{}",
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "-",
                                    "json": "relationships",
                                    "yaml": "relationships"
                                  },
                                  "description": "The relationships of the model."
                                },
                                "components": {
                                  "type": "array",
                                  "x-go-type": "interface{}",
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "-",
                                    "json": "components",
                                    "yaml": "components"
                                  },
                                  "description": "The components of the model."
                                },
                                "componentsCount": {
                                  "type": "integer",
                                  "description": "Number of components associated with the model.",
                                  "x-order": 13,
                                  "x-oapi-codegen-extra-tags": {
                                    "json": "components_count",
                                    "yaml": "components_count",
                                    "gorm": "-"
                                  },
                                  "default": 0,
                                  "minimum": 0
                                },
                                "relationshipsCount": {
                                  "type": "integer",
                                  "description": "Number of relationships associated with the model.",
                                  "x-order": 13,
                                  "x-oapi-codegen-extra-tags": {
                                    "gorm": "-",
                                    "json": "relationships_count",
                                    "yaml": "relationships_count"
                                  },
                                  "default": 0,
                                  "minimum": 0
                                },
                                "created_at": {
                                  "x-order": 14,
                                  "description": "Timestamp when the resource was created.",
                                  "x-go-type": "time.Time",
                                  "type": "string",
                                  "format": "date-time",
                                  "x-go-name": "CreatedAt",
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "created_at",
                                    "yaml": "created_at"
                                  },
                                  "x-go-type-skip-optional-pointer": true
                                },
                                "updated_at": {
                                  "x-order": 15,
                                  "description": "Timestamp when the resource was updated.",
                                  "x-go-type": "time.Time",
                                  "type": "string",
                                  "format": "date-time",
                                  "x-go-name": "UpdatedAt",
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "updated_at",
                                    "yaml": "updated_at"
                                  },
                                  "x-go-type-skip-optional-pointer": true
                                }
                              },
                              "required": [
                                "id",
                                "schemaVersion",
                                "displayName",
                                "status",
                                "subCategory",
                                "model",
                                "name",
                                "description",
                                "version",
                                "registrant",
                                "category",
                                "categoryId",
                                "registrantId",
                                "relationshipsCount",
                                "componentsCount",
                                "components",
                                "relationships"
                              ]
                            },
                            "modelReference": {
                              "x-go-type": "modelv1beta1.ModelReference",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/v1beta1/model",
                                "name": "modelv1beta1"
                              },
                              "x-order": 8,
                              "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",
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "-"
                              },
                              "x-generate-db-helpers": true,
                              "type": "object",
                              "required": [
                                "id",
                                "name",
                                "version",
                                "displayName",
                                "model",
                                "registrant"
                              ],
                              "properties": {
                                "id": {
                                  "type": "string",
                                  "format": "uuid",
                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "name": {
                                  "type": "string",
                                  "description": "The unique name for the model within the scope of a registrant.",
                                  "pattern": "^[a-z0-9-]+$",
                                  "examples": [
                                    "cert-manager"
                                  ]
                                },
                                "version": {
                                  "description": "Version of the model definition.",
                                  "type": "string",
                                  "minLength": 5,
                                  "maxLength": 100,
                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                },
                                "displayName": {
                                  "type": "string",
                                  "description": "Human-readable name for the model.",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "pattern": "^[a-zA-Z0-9 ]+$",
                                  "examples": [
                                    "Cert Manager"
                                  ]
                                },
                                "model": {
                                  "type": "object",
                                  "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                  "required": [
                                    "version"
                                  ],
                                  "properties": {
                                    "version": {
                                      "description": "Version of the model as defined by the registrant.",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "version"
                                      },
                                      "x-order": 1,
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    }
                                  }
                                },
                                "registrant": {
                                  "x-go-type": "RegistrantReference",
                                  "x-oapi-codegen-extra-tags": {
                                    "json": "registrant"
                                  },
                                  "type": "object",
                                  "required": [
                                    "kind"
                                  ],
                                  "properties": {
                                    "kind": {
                                      "type": "string",
                                      "description": "Kind of the registrant.",
                                      "maxLength": 255
                                    }
                                  }
                                }
                              }
                            },
                            "modelId": {
                              "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.",
                              "x-go-name": "ModelID",
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                                "db": "model_id",
                                "yaml": "-",
                                "json": "-"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "styles": {
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json",
                                "yaml": "styles",
                                "json": "styles"
                              },
                              "x-go-type": "core.ComponentStyles",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/core",
                                "name": "core"
                              },
                              "x-order": 8,
                              "type": "object",
                              "description": "Visualization styles for a component",
                              "required": [
                                "shape",
                                "primaryColor",
                                "svgColor",
                                "svgWhite",
                                "svgComplete"
                              ],
                              "allOf": [
                                {
                                  "type": "object",
                                  "description": "Common styles for all entities",
                                  "additionalProperties": true,
                                  "required": [
                                    "primaryColor",
                                    "svgColor",
                                    "svgWhite",
                                    "svgComplete"
                                  ],
                                  "properties": {
                                    "primaryColor": {
                                      "type": "string",
                                      "description": "Primary color of the component used for UI representation.",
                                      "maxLength": 500
                                    },
                                    "secondaryColor": {
                                      "type": "string",
                                      "description": "Secondary color of the entity used for UI representation.",
                                      "maxLength": 500
                                    },
                                    "svgWhite": {
                                      "type": "string",
                                      "description": "White SVG of the entity used for UI representation on dark background.",
                                      "maxLength": 500
                                    },
                                    "svgColor": {
                                      "type": "string",
                                      "description": "Colored SVG of the entity used for UI representation on light background.",
                                      "maxLength": 500
                                    },
                                    "svgComplete": {
                                      "type": "string",
                                      "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                      "maxLength": 500
                                    },
                                    "color": {
                                      "type": "string",
                                      "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 500
                                    },
                                    "textOpacity": {
                                      "type": "number",
                                      "description": "The opacity of the label text, including its outline.",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "fontFamily": {
                                      "type": "string",
                                      "description": "A comma-separated list of font names to use on the label text.",
                                      "maxLength": 500
                                    },
                                    "fontSize": {
                                      "type": "string",
                                      "description": "The size of the label text.",
                                      "maxLength": 500
                                    },
                                    "fontStyle": {
                                      "type": "string",
                                      "description": "A CSS font style to be applied to the label text.",
                                      "maxLength": 500
                                    },
                                    "fontWeight": {
                                      "type": "string",
                                      "description": "A CSS font weight to be applied to the label text.",
                                      "maxLength": 500
                                    },
                                    "textTransform": {
                                      "type": "string",
                                      "description": "A transformation to apply to the label text",
                                      "enum": [
                                        "none",
                                        "uppercase",
                                        "lowercase"
                                      ]
                                    },
                                    "opacity": {
                                      "type": "number",
                                      "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.",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "zIndex": {
                                      "type": "integer",
                                      "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.",
                                      "minimum": 0
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                      "maxLength": 500
                                    },
                                    "animation": {
                                      "type": "object",
                                      "description": "The animation to apply to the element. example ripple,bounce,etc"
                                    }
                                  }
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "shape": {
                                      "type": "string",
                                      "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)",
                                      "enum": [
                                        "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"
                                      ]
                                    },
                                    "position": {
                                      "type": "object",
                                      "additionalProperties": false,
                                      "required": [
                                        "x",
                                        "y"
                                      ],
                                      "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.",
                                      "properties": {
                                        "x": {
                                          "type": "number",
                                          "description": "The x-coordinate of the node.",
                                          "minimum": -1000000,
                                          "maximum": 1000000,
                                          "x-go-type": "float64"
                                        },
                                        "y": {
                                          "type": "number",
                                          "description": "The y-coordinate of the node.",
                                          "minimum": -1000000,
                                          "maximum": 1000000,
                                          "x-go-type": "float64"
                                        }
                                      }
                                    },
                                    "bodyText": {
                                      "type": "string",
                                      "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                      "maxLength": 500
                                    },
                                    "bodyTextWrap": {
                                      "type": "string",
                                      "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                      "enum": [
                                        "none",
                                        "wrap",
                                        "ellipsis"
                                      ]
                                    },
                                    "bodyTextMaxWidth": {
                                      "type": "string",
                                      "description": "The maximum width for wrapping text in the node.",
                                      "maxLength": 50
                                    },
                                    "bodyTextOpacity": {
                                      "type": "number",
                                      "description": "The opacity of the node's body text, including its outline.",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "bodyTextBackgroundColor": {
                                      "type": "string",
                                      "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 100
                                    },
                                    "bodyTextFontSize": {
                                      "type": "number",
                                      "description": "The size of the node's body text.",
                                      "minimum": 0
                                    },
                                    "bodyTextColor": {
                                      "type": "string",
                                      "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 100
                                    },
                                    "bodyTextFontWeight": {
                                      "type": "string",
                                      "description": "A CSS font weight to be applied to the node's body text.",
                                      "maxLength": 50
                                    },
                                    "bodyTextHorizontalAlign": {
                                      "type": "string",
                                      "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                      "maxLength": 50
                                    },
                                    "bodyTextDecoration": {
                                      "type": "string",
                                      "description": "A CSS text decoration to be applied to the node's body text.",
                                      "maxLength": 100
                                    },
                                    "bodyTextVerticalAlign": {
                                      "type": "string",
                                      "description": "A CSS vertical alignment to be applied to the node's body text.",
                                      "maxLength": 50
                                    },
                                    "width": {
                                      "type": "number",
                                      "description": "The width of the node's body or the width of an edge's line.",
                                      "minimum": 0
                                    },
                                    "height": {
                                      "type": "number",
                                      "description": "The height of the node's body",
                                      "minimum": 0
                                    },
                                    "backgroundImage": {
                                      "type": "string",
                                      "format": "uri",
                                      "description": "The URL that points to the image to show in the node.",
                                      "maxLength": 2048
                                    },
                                    "backgroundColor": {
                                      "type": "string",
                                      "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 100
                                    },
                                    "backgroundBlacken": {
                                      "type": "number",
                                      "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                      "maximum": 1,
                                      "minimum": -1
                                    },
                                    "backgroundOpacity": {
                                      "type": "number",
                                      "description": "The opacity level of the node's background colour",
                                      "maximum": 1,
                                      "minimum": 0
                                    },
                                    "backgroundPositionX": {
                                      "type": "string",
                                      "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                      "maxLength": 50
                                    },
                                    "backgroundPositionY": {
                                      "type": "string",
                                      "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                      "maxLength": 50
                                    },
                                    "backgroundOffsetX": {
                                      "type": "string",
                                      "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                      "maxLength": 50
                                    },
                                    "backgroundOffsetY": {
                                      "type": "string",
                                      "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                      "maxLength": 50
                                    },
                                    "backgroundFit": {
                                      "type": "string",
                                      "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                      "enum": [
                                        "none",
                                        "contain",
                                        "cover"
                                      ]
                                    },
                                    "backgroundClip": {
                                      "type": "string",
                                      "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                      "enum": [
                                        "none",
                                        "node",
                                        "node-border"
                                      ]
                                    },
                                    "backgroundWidthRelativeTo": {
                                      "type": "string",
                                      "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                      "enum": [
                                        "none",
                                        "inner",
                                        "outer"
                                      ]
                                    },
                                    "backgroundHeightRelativeTo": {
                                      "type": "string",
                                      "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                      "enum": [
                                        "none",
                                        "inner",
                                        "outer"
                                      ]
                                    },
                                    "borderWidth": {
                                      "type": "number",
                                      "description": "The size of the node's border.",
                                      "minimum": 0
                                    },
                                    "borderStyle": {
                                      "type": "string",
                                      "description": "The style of the node's border",
                                      "enum": [
                                        "solid",
                                        "dotted",
                                        "dashed",
                                        "double"
                                      ]
                                    },
                                    "borderColor": {
                                      "type": "string",
                                      "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 100
                                    },
                                    "borderOpacity": {
                                      "type": "number",
                                      "description": "The opacity of the node's border",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "padding": {
                                      "type": "number",
                                      "description": "The amount of padding around all sides of the node.",
                                      "minimum": 0
                                    },
                                    "textHalign": {
                                      "type": "string",
                                      "description": "The horizontal alignment of a node's label",
                                      "enum": [
                                        "left",
                                        "center",
                                        "right"
                                      ]
                                    },
                                    "textValign": {
                                      "type": "string",
                                      "description": "The vertical alignment of a node's label",
                                      "enum": [
                                        "top",
                                        "center",
                                        "bottom"
                                      ]
                                    },
                                    "ghost": {
                                      "type": "string",
                                      "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                      "default": "no",
                                      "enum": [
                                        "yes",
                                        "no"
                                      ]
                                    },
                                    "activeBgColor": {
                                      "type": "string",
                                      "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.",
                                      "maxLength": 100
                                    },
                                    "activeBgOpacity": {
                                      "type": "string",
                                      "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                      "maxLength": 50
                                    },
                                    "activeBgSize": {
                                      "type": "string",
                                      "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                      "maxLength": 50
                                    },
                                    "selectionBoxColor": {
                                      "type": "string",
                                      "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.",
                                      "maxLength": 100
                                    },
                                    "selectionBoxBorderWidth": {
                                      "type": "number",
                                      "description": "The size of the border on the selection box. Selector needs to be *core*",
                                      "minimum": 0
                                    },
                                    "selectionBoxOpacity": {
                                      "type": "number",
                                      "description": "The opacity of the selection box. Selector needs to be *core*",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "outsideTextureBgColor": {
                                      "type": "string",
                                      "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.",
                                      "maxLength": 100
                                    },
                                    "outsideTextureBgOpacity": {
                                      "type": "number",
                                      "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "shapePolygonPoints": {
                                      "type": "string",
                                      "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 )",
                                      "maxLength": 2000
                                    },
                                    "menuBackgroundColor": {
                                      "type": "string",
                                      "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 100
                                    },
                                    "menuBackgroundOpacity": {
                                      "type": "number",
                                      "description": "The opacity of the background of the component menu.",
                                      "minimum": 0,
                                      "maximum": 1
                                    },
                                    "menuForgroundColor": {
                                      "type": "string",
                                      "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                      "maxLength": 100
                                    }
                                  }
                                }
                              ]
                            },
                            "capabilities": {
                              "x-order": 9,
                              "type": "array",
                              "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.",
                              "items": {
                                "x-go-type": "capabilityv1beta1.Capability",
                                "x-go-type-import": {
                                  "path": "github.com/meshery/schemas/models/v1beta1/capability",
                                  "name": "capabilityv1beta1"
                                },
                                "$id": "https://schemas.meshery.io/capability.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                "additionalProperties": false,
                                "type": "object",
                                "required": [
                                  "description",
                                  "schemaVersion",
                                  "version",
                                  "displayName",
                                  "kind",
                                  "type",
                                  "subType",
                                  "entityState",
                                  "key",
                                  "status"
                                ],
                                "x-oapi-codegen-extra-tags": {
                                  "gorm": "type:bytes;serializer:json"
                                },
                                "properties": {
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema to which the capability definition conforms.",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "description": "Version of the capability definition.",
                                    "type": "string",
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "description": "Name of the capability in human-readible format.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the capability.",
                                    "maxLength": 5000
                                  },
                                  "kind": {
                                    "description": "Top-level categorization of the capability",
                                    "additionalProperties": false,
                                    "anyOf": [
                                      {
                                        "const": "action",
                                        "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                      },
                                      {
                                        "const": "mutate",
                                        "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                      },
                                      {
                                        "const": "view",
                                        "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                      },
                                      {
                                        "const": "interaction",
                                        "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                      }
                                    ],
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "type": {
                                    "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "subType": {
                                    "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "key": {
                                    "description": "Key that backs the capability.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "entityState": {
                                    "description": "State of the entity in which the capability is applicable.",
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "enum": [
                                        "declaration",
                                        "instance"
                                      ],
                                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                      "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                    }
                                  },
                                  "status": {
                                    "type": "string",
                                    "description": "Status of the capability",
                                    "default": "enabled",
                                    "enum": [
                                      "enabled",
                                      "disabled"
                                    ]
                                  },
                                  "metadata": {
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the capability. Extension point.",
                                    "additionalProperties": true
                                  }
                                },
                                "default": [
                                  {
                                    "description": "Configure the visual styles for the component",
                                    "displayName": "Styling",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "mutate",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "",
                                    "type": "style",
                                    "version": "0.7.0"
                                  },
                                  {
                                    "description": "Change the shape of the component",
                                    "displayName": "Change Shape",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "mutate",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "shape",
                                    "type": "style",
                                    "version": "0.7.0"
                                  },
                                  {
                                    "description": "Drag and Drop a component into a parent component in graph view",
                                    "displayName": "Compound Drag And Drop",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "interaction",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "compoundDnd",
                                    "type": "graph",
                                    "version": "0.7.0"
                                  },
                                  {
                                    "description": "Add text to nodes body",
                                    "displayName": "Body Text",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "mutate",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "body-text",
                                    "type": "style",
                                    "version": "0.7.0"
                                  }
                                ]
                              },
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json",
                                "yaml": "capabilities",
                                "json": "capabilities"
                              },
                              "default": [
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Performance Test",
                                  "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                                  "kind": "action",
                                  "type": "operator",
                                  "subType": "perf-test",
                                  "key": "",
                                  "entityState": [
                                    "instance"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Workload Configuration",
                                  "description": "Configure the workload specific setting of a component",
                                  "kind": "mutate",
                                  "type": "configuration",
                                  "subType": "config",
                                  "key": "",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Labels and Annotations Configuration",
                                  "description": "Configure Labels And Annotations for the component",
                                  "kind": "mutate",
                                  "type": "configuration",
                                  "subType": "labels-and-annotations",
                                  "key": "",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Relationships",
                                  "description": "View relationships for the component",
                                  "kind": "view",
                                  "type": "configuration",
                                  "subType": "relationship",
                                  "key": "",
                                  "entityState": [
                                    "declaration",
                                    "instance"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Json Schema",
                                  "description": "View Component Definition ",
                                  "kind": "view",
                                  "type": "configuration",
                                  "subType": "definition",
                                  "key": "",
                                  "entityState": [
                                    "declaration",
                                    "instance"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Styling",
                                  "description": "Configure the visual styles for the component",
                                  "kind": "mutate",
                                  "type": "style",
                                  "subType": "",
                                  "key": "",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Change Shape",
                                  "description": "Change the shape of the component",
                                  "kind": "mutate",
                                  "type": "style",
                                  "subType": "shape",
                                  "key": "",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                },
                                {
                                  "schemaVersion": "capability.meshery.io/v1beta1",
                                  "version": "0.7.0",
                                  "displayName": "Compound Drag And Drop",
                                  "description": "Drag and Drop a component into a parent component in graph view",
                                  "kind": "interaction",
                                  "type": "graph",
                                  "subType": "compoundDnd",
                                  "key": "",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "status": "enabled",
                                  "metadata": null
                                }
                              ]
                            },
                            "status": {
                              "x-order": 10,
                              "type": "string",
                              "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                              "default": "enabled",
                              "enum": [
                                "ignored",
                                "enabled",
                                "duplicate",
                                "resolved",
                                "open"
                              ],
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "status",
                                "json": "status"
                              }
                            },
                            "metadata": {
                              "x-order": 11,
                              "type": "object",
                              "description": "Metadata contains additional information associated with the component.",
                              "required": [
                                "genealogy",
                                "isAnnotation",
                                "isNamespaced",
                                "published",
                                "instanceDetails",
                                "configurationUISchema"
                              ],
                              "properties": {
                                "genealogy": {
                                  "x-order": 1,
                                  "type": "string",
                                  "description": "Genealogy represents the various representational states of the component.",
                                  "maxLength": 1000
                                },
                                "isAnnotation": {
                                  "x-order": 2,
                                  "type": "boolean",
                                  "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.",
                                  "default": false
                                },
                                "isNamespaced": {
                                  "x-order": 3,
                                  "type": "boolean",
                                  "description": "Identifies whether the component is scoped to namespace or cluster wide."
                                },
                                "published": {
                                  "x-order": 4,
                                  "type": "boolean",
                                  "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."
                                },
                                "instanceDetails": {
                                  "x-order": 5,
                                  "type": "object",
                                  "description": "InstanceDetails contains information about the instance of the component."
                                },
                                "configurationUISchema": {
                                  "x-order": 6,
                                  "type": "string",
                                  "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/ .",
                                  "maxLength": 20000
                                }
                              },
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json"
                              },
                              "additionalProperties": true
                            },
                            "configuration": {
                              "x-order": 12,
                              "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                              "type": "object",
                              "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json"
                              }
                            },
                            "component": {
                              "x-order": 13,
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json"
                              },
                              "x-go-type": "Component",
                              "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                              "type": "object",
                              "properties": {
                                "version": {
                                  "type": "string",
                                  "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                                  "x-order": 1,
                                  "maxLength": 500
                                },
                                "kind": {
                                  "type": "string",
                                  "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                                  "x-order": 2,
                                  "maxLength": 255
                                },
                                "schema": {
                                  "type": "string",
                                  "description": "JSON schema of the object as defined by the registrant.",
                                  "x-order": 3,
                                  "maxLength": 500
                                }
                              },
                              "required": [
                                "version",
                                "kind",
                                "schema"
                              ]
                            },
                            "createdAt": {
                              "description": "Timestamp when the component was created.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "created_at",
                                "yaml": "createdAt",
                                "json": "createdAt"
                              },
                              "x-order": 14,
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "CreatedAt",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "updatedAt": {
                              "description": "Timestamp when the component was last updated.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "updated_at",
                                "yaml": "updatedAt",
                                "json": "updatedAt"
                              },
                              "x-order": 15,
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "UpdatedAt",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "deletedAt": {
                              "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "deleted_at",
                                "json": "deletedAt,omitempty",
                                "yaml": "deletedAt,omitempty"
                              },
                              "x-order": 16,
                              "x-go-type": "NullTime",
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            }
                          },
                          "required": [
                            "id",
                            "displayName",
                            "description",
                            "schemaVersion",
                            "format",
                            "version",
                            "configuration",
                            "metadata",
                            "model",
                            "modelReference",
                            "component",
                            "createdAt",
                            "updatedAt"
                          ]
                        },
                        "description": "The generated component definitions."
                      },
                      "errors": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "maxLength": 65536
                        },
                        "description": "Errors encountered while generating components for this package."
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/export": {
      "get": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "exportRegistryModel",
        "summary": "Export a registered model",
        "description": "Exports a registered model, including its components and relationships, as a downloadable artifact.",
        "security": [],
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "description": "ID of the model to export.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "Name of the model to export.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "version",
            "in": "query",
            "description": "Version of the model to export.",
            "required": false,
            "schema": {
              "type": "string",
              "maxLength": 255
            }
          },
          {
            "name": "outputFormat",
            "in": "query",
            "description": "Format of the definitions inside the exported artifact.",
            "required": false,
            "schema": {
              "type": "string",
              "x-enum-casing-exempt": true,
              "enum": [
                "json",
                "yaml"
              ],
              "default": "json"
            }
          },
          {
            "name": "fileType",
            "in": "query",
            "description": "Type of artifact to produce.",
            "required": false,
            "schema": {
              "type": "string",
              "x-enum-casing-exempt": true,
              "enum": [
                "oci",
                "tar"
              ],
              "default": "oci"
            }
          },
          {
            "name": "components",
            "in": "query",
            "description": "Whether to include component definitions in the export.",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "relationships",
            "in": "query",
            "description": "Whether to include relationship definitions in the export.",
            "required": false,
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Exported model artifact.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found."
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/validate": {
      "post": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "validateRegistryEntities",
        "summary": "Validate values against schemas",
        "description": "Validates a batch of values against their declared schemas (JSON Schema or CUE) and returns a per-item validation verdict.",
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "description": "Batch of values to validate against their schemas.",
                "required": [
                  "validationItems"
                ],
                "properties": {
                  "validationItems": {
                    "type": "object",
                    "description": "Items to validate, keyed by a caller-chosen identifier.",
                    "additionalProperties": {
                      "type": "object",
                      "required": [
                        "schema",
                        "value"
                      ],
                      "properties": {
                        "schema": {
                          "type": "string",
                          "description": "Schema (JSON Schema or CUE) to validate the value against.",
                          "maxLength": 1048576
                        },
                        "value": {
                          "type": "string",
                          "description": "Value to validate.",
                          "maxLength": 1048576
                        },
                        "valueType": {
                          "type": "string",
                          "x-enum-casing-exempt": true,
                          "enum": [
                            "JSON",
                            "YAML",
                            "JSONSCHEMA",
                            "CUE"
                          ],
                          "description": "Format of `value`."
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Validation results keyed by the request item identifiers.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "Validation verdicts keyed by the request item identifiers.",
                  "required": [
                    "result"
                  ],
                  "properties": {
                    "result": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "object",
                        "required": [
                          "isValid"
                        ],
                        "properties": {
                          "isValid": {
                            "type": "boolean",
                            "description": "Whether the value conforms to its schema."
                          },
                          "errors": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "maxLength": 65536
                            },
                            "description": "Validation errors, empty when the value is valid."
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request."
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    },
    "/api/registry/{entityType}/status": {
      "post": {
        "x-internal": [
          "meshery"
        ],
        "tags": [
          "Registry"
        ],
        "operationId": "updateRegistryEntityStatus",
        "summary": "Update the status of a registered entity",
        "description": "Updates the lifecycle status of a registered entity (for example, ignoring or re-enabling a model).",
        "parameters": [
          {
            "name": "entityType",
            "in": "path",
            "description": "Type of the registered entity whose status is being updated.",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 255,
              "examples": [
                "models"
              ]
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "description": "Request to update the lifecycle status of a registered entity.",
                "required": [
                  "status"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "description": "ID of the registered entity whose status is being updated.",
                    "maxLength": 255
                  },
                  "status": {
                    "type": "string",
                    "description": "New status of the entity (e.g. `registered`, `ignored`).",
                    "maxLength": 255
                  },
                  "displayName": {
                    "type": "string",
                    "description": "Display name of the entity, used in the resulting status-change event.",
                    "maxLength": 255
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Entity status updated."
          },
          "400": {
            "description": "Bad request."
          },
          "401": {
            "description": "Expired JWT token used or insufficient privilege",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error."
          }
        }
      }
    }
  },
  "components": {
    "responses": {
      "400": {
        "description": "Bad request."
      },
      "401": {
        "description": "Expired JWT token used or insufficient privilege",
        "content": {
          "text/plain": {
            "schema": {
              "type": "string"
            }
          }
        }
      },
      "404": {
        "description": "The requested resource was not found."
      },
      "500": {
        "description": "Internal server error."
      }
    },
    "securitySchemes": {
      "jwt": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "parameters": {
      "page": {
        "name": "page",
        "in": "query",
        "description": "Zero-indexed page number of the result set.",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 0
        }
      },
      "pageSize": {
        "name": "pageSize",
        "in": "query",
        "description": "Number of items per page, or `all` to return every item.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "search": {
        "name": "search",
        "in": "query",
        "description": "Filter results by a case-insensitive substring match on name.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "order": {
        "name": "order",
        "in": "query",
        "description": "Field to order the results by.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "sort": {
        "name": "sort",
        "in": "query",
        "description": "Sort direction (`asc` or `desc`).",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "version": {
        "name": "version",
        "in": "query",
        "description": "Filter by model version.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "apiVersion": {
        "name": "apiVersion",
        "in": "query",
        "description": "Filter components by their API version.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "annotations": {
        "name": "annotations",
        "in": "query",
        "description": "Annotation filter: `true` returns only annotation entities, `false` excludes them, and `include` returns both.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "components": {
        "name": "components",
        "in": "query",
        "description": "When `true`, embeds the model's component definitions in the response.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "relationships": {
        "name": "relationships",
        "in": "query",
        "description": "When `true`, embeds the model's relationship definitions in the response.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "trim": {
        "name": "trim",
        "in": "query",
        "description": "When `true`, omits large schema payloads from the returned definitions.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "modelName": {
        "name": "model",
        "in": "path",
        "description": "Name of the model (for `DELETE /api/registry/models/{model}`, the model's ID).",
        "required": true,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "categoryName": {
        "name": "category",
        "in": "path",
        "description": "Name of the category.",
        "required": true,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      },
      "componentName": {
        "name": "name",
        "in": "path",
        "description": "Kind of the component (e.g. `Deployment`).",
        "required": true,
        "schema": {
          "type": "string",
          "maxLength": 255
        }
      }
    },
    "schemas": {
      "PageMetadata": {
        "type": "object",
        "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
        "properties": {
          "page": {
            "type": "integer",
            "description": "Current page number of the result set.",
            "minimum": 0
          },
          "pageSize": {
            "type": "integer",
            "description": "Number of items in the page.",
            "minimum": 0
          },
          "totalCount": {
            "type": "integer",
            "description": "Total number of items available.",
            "minimum": 0
          },
          "page_size": {
            "type": "integer",
            "description": "Deprecated snake_case alias of `pageSize`.",
            "minimum": 0,
            "deprecated": true
          },
          "total_count": {
            "type": "integer",
            "description": "Deprecated snake_case alias of `totalCount`.",
            "minimum": 0,
            "deprecated": true
          }
        }
      },
      "RegistryModel": {
        "description": "A registered model, annotated with its duplicate count.",
        "allOf": [
          {
            "$id": "https://schemas.meshery.io/model.yaml",
            "$schema": "http://json-schema.org/draft-07/schema#",
            "description": "Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "id": {
                "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                "x-order": 1,
                "x-oapi-codegen-extra-tags": {
                  "json": "id"
                },
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "schemaVersion": {
                "description": "Specifies the version of the schema used for the definition.",
                "x-order": 2,
                "x-oapi-codegen-extra-tags": {
                  "json": "schemaVersion"
                },
                "default": "models.meshery.io/v1beta2",
                "type": "string",
                "minLength": 2,
                "maxLength": 100,
                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                "example": [
                  "v1",
                  "v1alpha1",
                  "v2beta3",
                  "v1.custom-suffix",
                  "models.meshery.io/v1beta1",
                  "capability.meshery.io/v1alpha1"
                ]
              },
              "version": {
                "description": "Version of the model definition.",
                "type": "string",
                "x-order": 3,
                "x-oapi-codegen-extra-tags": {
                  "json": "version"
                },
                "minLength": 5,
                "maxLength": 100,
                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
              },
              "name": {
                "type": "string",
                "description": "The unique name for the model within the scope of a registrant.",
                "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                "pattern": "^[a-z0-9-]+$",
                "examples": [
                  "cert-manager"
                ],
                "x-order": 4,
                "x-oapi-codegen-extra-tags": {
                  "json": "name"
                },
                "default": "untitled-model"
              },
              "displayName": {
                "description": "Human-readable name for the model.",
                "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                "minLength": 1,
                "maxLength": 100,
                "type": "string",
                "pattern": "^[a-zA-Z0-9 ]+$",
                "examples": [
                  "Cert Manager"
                ],
                "x-order": 5,
                "x-oapi-codegen-extra-tags": {
                  "json": "displayName"
                },
                "default": "Untitled Model"
              },
              "description": {
                "type": "string",
                "default": "A new Meshery model.",
                "description": "Description of the model.",
                "minLength": 1,
                "maxLength": 1000,
                "x-order": 6,
                "x-oapi-codegen-extra-tags": {
                  "json": "description,omitempty"
                }
              },
              "status": {
                "type": "string",
                "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                "enum": [
                  "ignored",
                  "enabled",
                  "duplicate"
                ],
                "x-order": 7,
                "x-oapi-codegen-extra-tags": {
                  "json": "status"
                },
                "default": "enabled"
              },
              "registrant": {
                "description": "Connection identifying the entity that registered this model.",
                "x-oapi-codegen-extra-tags": {
                  "json": "registrant",
                  "gorm": "foreignKey:RegistrantId;references:ID"
                },
                "x-order": 8,
                "x-go-type": "connectionv1beta1.Connection",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/v1beta1/connection",
                  "name": "connectionv1beta1"
                },
                "$id": "https://schemas.meshery.io/connection.yaml",
                "$schema": "http://json-schema.org/draft-07/schema#",
                "additionalProperties": false,
                "type": "object",
                "required": [
                  "id",
                  "schemaVersion",
                  "name",
                  "type",
                  "subType",
                  "kind",
                  "status"
                ],
                "properties": {
                  "id": {
                    "description": "Connection ID",
                    "x-order": 1,
                    "x-go-name": "ID",
                    "x-oapi-codegen-extra-tags": {
                      "db": "id",
                      "yaml": "id"
                    },
                    "type": "string",
                    "format": "uuid",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "name": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "name",
                      "yaml": "name"
                    },
                    "x-order": 2,
                    "type": "string",
                    "description": "Connection Name"
                  },
                  "credentialId": {
                    "x-go-name": "CredentialID",
                    "x-oapi-codegen-extra-tags": {
                      "db": "credential_id",
                      "yaml": "credentialId"
                    },
                    "x-order": 3,
                    "description": "Associated Credential ID",
                    "type": "string",
                    "format": "uuid",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "type": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "type",
                      "yaml": "type"
                    },
                    "x-order": 4,
                    "type": "string",
                    "description": "Connection Type (platform, telemetry, collaboration)"
                  },
                  "subType": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "sub_type",
                      "yaml": "subType"
                    },
                    "x-order": 5,
                    "type": "string",
                    "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                  },
                  "kind": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "kind",
                      "yaml": "kind"
                    },
                    "x-order": 6,
                    "type": "string",
                    "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                  },
                  "metadata": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "metadata",
                      "yaml": "metadata"
                    },
                    "x-order": 7,
                    "x-go-type": "core.Map",
                    "x-go-type-import": {
                      "path": "github.com/meshery/schemas/models/core"
                    },
                    "x-go-type-skip-optional-pointer": true,
                    "type": "object",
                    "description": "Additional connection metadata"
                  },
                  "status": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "status",
                      "yaml": "status"
                    },
                    "x-order": 8,
                    "description": "Connection Status",
                    "type": "string",
                    "enum": [
                      "discovered",
                      "registered",
                      "connected",
                      "ignored",
                      "maintenance",
                      "disconnected",
                      "deleted",
                      "not found"
                    ]
                  },
                  "user_id": {
                    "x-go-name": "UserID",
                    "x-oapi-codegen-extra-tags": {
                      "db": "owner",
                      "yaml": "user_id"
                    },
                    "x-order": 9,
                    "description": "User ID who owns this connection",
                    "type": "string",
                    "format": "uuid",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "created_at": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "created_at",
                      "yaml": "created_at"
                    },
                    "x-order": 10,
                    "type": "string",
                    "format": "date-time",
                    "x-go-type-skip-optional-pointer": true
                  },
                  "updated_at": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "updated_at",
                      "yaml": "updated_at"
                    },
                    "x-order": 11,
                    "type": "string",
                    "format": "date-time",
                    "x-go-type-skip-optional-pointer": true
                  },
                  "deleted_at": {
                    "x-oapi-codegen-extra-tags": {
                      "db": "deleted_at",
                      "yaml": "deleted_at"
                    },
                    "x-order": 12,
                    "description": "SQL null Timestamp to handle null values of time.",
                    "x-go-type": "meshcore.NullTime",
                    "x-go-type-import": {
                      "name": "meshcore",
                      "path": "github.com/meshery/schemas/models/core"
                    },
                    "type": "string",
                    "format": "date-time",
                    "x-go-type-skip-optional-pointer": true
                  },
                  "environments": {
                    "type": "array",
                    "description": "Associated environments for this connection",
                    "items": {
                      "x-go-type": "*environmentv1beta1.Environment",
                      "x-go-type-import": {
                        "path": "github.com/meshery/schemas/models/v1beta1/environment",
                        "name": "environmentv1beta1"
                      },
                      "$id": "https://schemas.meshery.io/environment.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "title": "Environment",
                      "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                      "additionalProperties": false,
                      "type": "object",
                      "example": {
                        "id": "00000000-0000-0000-0000-000000000000",
                        "schemaVersion": "environments.meshery.io/v1beta1",
                        "name": "Production Environment",
                        "description": "Connections and credentials for the production cluster.",
                        "organization_id": "00000000-0000-0000-0000-000000000000",
                        "owner": "00000000-0000-0000-0000-000000000000",
                        "created_at": "0001-01-01T00:00:00Z",
                        "metadata": {},
                        "updated_at": "0001-01-01T00:00:00Z",
                        "deleted_at": null
                      },
                      "required": [
                        "id",
                        "schemaVersion",
                        "name",
                        "description",
                        "organization_id"
                      ],
                      "properties": {
                        "id": {
                          "description": "ID",
                          "x-order": 1,
                          "x-go-name": "ID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "id",
                            "yaml": "id"
                          },
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "schemaVersion": {
                          "description": "Specifies the version of the schema to which the environment conforms.",
                          "x-order": 2,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "schemaVersion",
                            "db": "-",
                            "gorm": "-"
                          },
                          "default": "environments.meshery.io/v1beta1",
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 100,
                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                          "example": [
                            "v1",
                            "v1alpha1",
                            "v2beta3",
                            "v1.custom-suffix",
                            "models.meshery.io/v1beta1",
                            "capability.meshery.io/v1alpha1"
                          ]
                        },
                        "name": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "name",
                            "yaml": "name"
                          },
                          "x-order": 3,
                          "type": "string",
                          "maxLength": 100,
                          "description": "Environment name"
                        },
                        "description": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "description",
                            "yaml": "description"
                          },
                          "x-order": 4,
                          "type": "string",
                          "maxLength": 1000,
                          "description": "Environment description"
                        },
                        "organization_id": {
                          "x-go-name": "OrganizationID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "organization_id",
                            "yaml": "organization_id"
                          },
                          "x-order": 5,
                          "description": "Environment organization ID",
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "owner": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "owner",
                            "yaml": "owner"
                          },
                          "x-order": 6,
                          "description": "Environment owner",
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "created_at": {
                          "x-order": 7,
                          "description": "Timestamp when the resource was created.",
                          "x-go-type": "time.Time",
                          "type": "string",
                          "format": "date-time",
                          "x-go-name": "CreatedAt",
                          "x-oapi-codegen-extra-tags": {
                            "db": "created_at",
                            "yaml": "created_at"
                          },
                          "x-go-type-skip-optional-pointer": true
                        },
                        "metadata": {
                          "description": "Additional metadata associated with the environment.",
                          "x-oapi-codegen-extra-tags": {
                            "db": "metadata",
                            "yaml": "metadata"
                          },
                          "x-order": 8,
                          "x-go-type": "core.Map",
                          "x-go-type-skip-optional-pointer": true,
                          "type": "object"
                        },
                        "updated_at": {
                          "x-order": 9,
                          "description": "Timestamp when the resource was updated.",
                          "x-go-type": "time.Time",
                          "type": "string",
                          "format": "date-time",
                          "x-go-name": "UpdatedAt",
                          "x-oapi-codegen-extra-tags": {
                            "db": "updated_at",
                            "yaml": "updated_at"
                          },
                          "x-go-type-skip-optional-pointer": true
                        },
                        "deleted_at": {
                          "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                          "nullable": true,
                          "x-oapi-codegen-extra-tags": {
                            "db": "deleted_at",
                            "yaml": "deleted_at"
                          },
                          "x-go-type": "core.NullTime",
                          "x-go-import": "database/sql",
                          "x-order": 10,
                          "x-go-type-import": {
                            "name": "meshcore",
                            "path": "github.com/meshery/schemas/models/core"
                          },
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        }
                      }
                    },
                    "x-oapi-codegen-extra-tags": {
                      "db": "-",
                      "yaml": "environments",
                      "gorm": "-"
                    },
                    "x-go-type-skip-optional-pointer": true,
                    "x-order": 13
                  },
                  "schemaVersion": {
                    "description": "Specifies the version of the schema used for the definition.",
                    "x-order": 14,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "schemaVersion",
                      "db": "-",
                      "gorm": "-"
                    },
                    "default": "connections.meshery.io/v1beta1",
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 100,
                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                    "example": [
                      "v1",
                      "v1alpha1",
                      "v2beta3",
                      "v1.custom-suffix",
                      "models.meshery.io/v1beta1",
                      "capability.meshery.io/v1alpha1"
                    ]
                  }
                }
              },
              "registrantId": {
                "description": "ID of the registrant.",
                "x-oapi-codegen-extra-tags": {
                  "json": "registrantId",
                  "gorm": "column:connection_id"
                },
                "x-order": 8,
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "categoryId": {
                "description": "ID of the category.",
                "x-oapi-codegen-extra-tags": {
                  "json": "-",
                  "yaml": "-",
                  "gorm": "categoryID"
                },
                "x-order": 8,
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "category": {
                "description": "Category the model belongs to.",
                "x-order": 9,
                "x-oapi-codegen-extra-tags": {
                  "json": "category",
                  "gorm": "foreignKey:CategoryId;references:ID"
                },
                "x-go-type": "categoryv1beta1.CategoryDefinition",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/v1beta1/category",
                  "name": "categoryv1beta1"
                },
                "$id": "https://schemas.meshery.io/category.yaml",
                "$schema": "http://json-schema.org/draft-07/schema#",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "id",
                  "name",
                  "metadata"
                ],
                "properties": {
                  "id": {
                    "x-order": 1,
                    "type": "string",
                    "format": "uuid",
                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "name",
                      "json": "name",
                      "gorm": "name"
                    },
                    "default": "Uncategorized",
                    "description": "The category of the model that determines the main grouping.",
                    "helperText": "Select a model category",
                    "enum": [
                      "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"
                    ],
                    "x-order": 2
                  },
                  "metadata": {
                    "description": "Additional metadata associated with the category.",
                    "type": "object",
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "metadata,omitempty",
                      "json": "metadata,omitempty",
                      "gorm": "type:bytes;serializer:json"
                    },
                    "x-order": 3
                  }
                }
              },
              "subCategory": {
                "description": "Sub-category the model belongs to.",
                "x-order": 10,
                "x-oapi-codegen-extra-tags": {
                  "yaml": "subCategory",
                  "json": "subCategory"
                },
                "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                  "name": "subcategoryv1beta1"
                },
                "$id": "https://schemas.meshery.io/category.yaml",
                "$schema": "http://json-schema.org/draft-07/schema#",
                "type": "string",
                "title": "SubCategory",
                "default": "Uncategorized",
                "enum": [
                  "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"
                ],
                "minLength": 1,
                "maxLength": 100
              },
              "metadata": {
                "type": "object",
                "description": "Metadata containing additional information associated with the model.",
                "required": [
                  "svgWhite",
                  "svgColor"
                ],
                "properties": {
                  "capabilities": {
                    "type": "array",
                    "description": "Capabilities associated with the model",
                    "items": {
                      "x-go-type": "capabilityv1alpha1.Capability",
                      "x-go-type-import": {
                        "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                        "name": "capabilityv1alpha1"
                      },
                      "$id": "https://schemas.meshery.io/capability.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                      "additionalProperties": false,
                      "type": "object",
                      "required": [
                        "description",
                        "schemaVersion",
                        "version",
                        "displayName",
                        "kind",
                        "type",
                        "subType",
                        "entityState",
                        "key",
                        "status"
                      ],
                      "x-oapi-codegen-extra-tags": {
                        "gorm": "type:bytes;serializer:json"
                      },
                      "properties": {
                        "schemaVersion": {
                          "description": "Specifies the version of the schema to which the capability definition conforms.",
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 100,
                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                          "example": [
                            "v1",
                            "v1alpha1",
                            "v2beta3",
                            "v1.custom-suffix",
                            "models.meshery.io/v1beta1",
                            "capability.meshery.io/v1alpha1"
                          ]
                        },
                        "version": {
                          "description": "Version of the capability definition.",
                          "type": "string",
                          "minLength": 5,
                          "maxLength": 100,
                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                        },
                        "displayName": {
                          "description": "Name of the capability in human-readible format.",
                          "type": "string",
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                        },
                        "description": {
                          "type": "string",
                          "description": "A written representation of the purpose and characteristics of the capability.",
                          "maxLength": 5000
                        },
                        "kind": {
                          "description": "Top-level categorization of the capability",
                          "additionalProperties": false,
                          "anyOf": [
                            {
                              "const": "action",
                              "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                            },
                            {
                              "const": "mutate",
                              "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                            },
                            {
                              "const": "view",
                              "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                            },
                            {
                              "const": "interaction",
                              "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                            }
                          ],
                          "type": "string",
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                        },
                        "type": {
                          "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                          "type": "string",
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                        },
                        "subType": {
                          "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                          "type": "string",
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                        },
                        "key": {
                          "description": "Key that backs the capability.",
                          "type": "string",
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                        },
                        "entityState": {
                          "description": "State of the entity in which the capability is applicable.",
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "declaration",
                              "instance"
                            ],
                            "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                            "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                          }
                        },
                        "status": {
                          "type": "string",
                          "description": "Status of the capability",
                          "default": "enabled",
                          "enum": [
                            "enabled",
                            "disabled"
                          ]
                        },
                        "metadata": {
                          "type": "object",
                          "description": "Metadata contains additional information associated with the capability. Extension point.",
                          "additionalProperties": true
                        }
                      },
                      "default": [
                        {
                          "description": "Configure the visual styles for the component",
                          "displayName": "Styling",
                          "entityState": [
                            "declaration"
                          ],
                          "key": "",
                          "kind": "mutate",
                          "schemaVersion": "capability.meshery.io/v1beta1",
                          "status": "enabled",
                          "subType": "",
                          "type": "style",
                          "version": "0.7.0"
                        },
                        {
                          "description": "Change the shape of the component",
                          "displayName": "Change Shape",
                          "entityState": [
                            "declaration"
                          ],
                          "key": "",
                          "kind": "mutate",
                          "schemaVersion": "capability.meshery.io/v1beta1",
                          "status": "enabled",
                          "subType": "shape",
                          "type": "style",
                          "version": "0.7.0"
                        },
                        {
                          "description": "Drag and Drop a component into a parent component in graph view",
                          "displayName": "Compound Drag And Drop",
                          "entityState": [
                            "declaration"
                          ],
                          "key": "",
                          "kind": "interaction",
                          "schemaVersion": "capability.meshery.io/v1beta1",
                          "status": "enabled",
                          "subType": "compoundDnd",
                          "type": "graph",
                          "version": "0.7.0"
                        },
                        {
                          "description": "Add text to nodes body",
                          "displayName": "Body Text",
                          "entityState": [
                            "declaration"
                          ],
                          "key": "",
                          "kind": "mutate",
                          "schemaVersion": "capability.meshery.io/v1beta1",
                          "status": "enabled",
                          "subType": "body-text",
                          "type": "style",
                          "version": "0.7.0"
                        }
                      ]
                    },
                    "x-order": 1
                  },
                  "isAnnotation": {
                    "type": "boolean",
                    "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                    "x-oapi-codegen-extra-tags": {
                      "json": "isAnnotation"
                    },
                    "x-order": 2,
                    "default": false
                  },
                  "primaryColor": {
                    "type": "string",
                    "description": "Primary color associated with the model.",
                    "minLength": 1,
                    "maxLength": 50,
                    "default": "#00b39f",
                    "x-oapi-codegen-extra-tags": {
                      "json": "primaryColor"
                    },
                    "x-order": 3
                  },
                  "secondaryColor": {
                    "type": "string",
                    "description": "Secondary color associated with the model.",
                    "minLength": 1,
                    "maxLength": 50,
                    "default": "#00D3A9",
                    "x-oapi-codegen-extra-tags": {
                      "json": "secondaryColor"
                    },
                    "x-order": 4
                  },
                  "svgWhite": {
                    "type": "string",
                    "description": "SVG representation of the model in white color.",
                    "minLength": 1,
                    "x-oapi-codegen-extra-tags": {
                      "json": "svgWhite"
                    },
                    "x-order": 5,
                    "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>"
                  },
                  "svgColor": {
                    "type": "string",
                    "description": "SVG representation of the model in colored format.",
                    "minLength": 1,
                    "x-oapi-codegen-extra-tags": {
                      "json": "svgColor"
                    },
                    "x-order": 6,
                    "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>"
                  },
                  "svgComplete": {
                    "type": "string",
                    "description": "SVG representation of the complete model.",
                    "minLength": 1,
                    "x-oapi-codegen-extra-tags": {
                      "json": "svgComplete"
                    },
                    "x-order": 7
                  },
                  "shape": {
                    "description": "Visual shape used to render the model's entities in design canvases.",
                    "x-order": 8,
                    "type": "string",
                    "enum": [
                      "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"
                    ]
                  }
                },
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json",
                  "json": "metadata"
                },
                "x-order": 11,
                "additionalProperties": true
              },
              "model": {
                "description": "Registrant-defined data associated with the model.",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json"
                },
                "x-order": 12,
                "type": "object",
                "required": [
                  "version"
                ],
                "properties": {
                  "version": {
                    "description": "Version of the model as defined by the registrant.",
                    "x-oapi-codegen-extra-tags": {
                      "json": "version"
                    },
                    "x-order": 1,
                    "type": "string",
                    "minLength": 5,
                    "maxLength": 100,
                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                  }
                }
              },
              "relationships": {
                "type": "array",
                "x-go-type": "interface{}",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "-",
                  "json": "relationships"
                },
                "description": "The relationships of the model."
              },
              "components": {
                "type": "array",
                "x-go-type": "interface{}",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "-",
                  "json": "components"
                },
                "description": "The components of the model."
              },
              "componentsCount": {
                "type": "integer",
                "description": "Number of components associated with the model.",
                "x-order": 13,
                "x-oapi-codegen-extra-tags": {
                  "json": "componentsCount",
                  "gorm": "-"
                },
                "default": 0,
                "minimum": 0
              },
              "relationshipsCount": {
                "type": "integer",
                "description": "Number of relationships associated with the model.",
                "x-order": 13,
                "x-oapi-codegen-extra-tags": {
                  "gorm": "-",
                  "json": "relationshipsCount"
                },
                "default": 0,
                "minimum": 0
              },
              "createdAt": {
                "description": "Timestamp when the model was created.",
                "x-oapi-codegen-extra-tags": {
                  "db": "created_at",
                  "yaml": "created_at",
                  "json": "createdAt"
                },
                "x-order": 14,
                "x-go-type": "time.Time",
                "type": "string",
                "format": "date-time",
                "x-go-name": "CreatedAt",
                "x-go-type-skip-optional-pointer": true
              },
              "updatedAt": {
                "description": "Timestamp when the model was last updated.",
                "x-oapi-codegen-extra-tags": {
                  "db": "updated_at",
                  "yaml": "updated_at",
                  "json": "updatedAt"
                },
                "x-order": 15,
                "x-go-type": "time.Time",
                "type": "string",
                "format": "date-time",
                "x-go-name": "UpdatedAt",
                "x-go-type-skip-optional-pointer": true
              }
            },
            "required": [
              "id",
              "schemaVersion",
              "displayName",
              "status",
              "subCategory",
              "model",
              "name",
              "description",
              "version",
              "registrant",
              "category",
              "categoryId",
              "registrantId",
              "relationshipsCount",
              "componentsCount",
              "components",
              "relationships"
            ]
          },
          {
            "type": "object",
            "properties": {
              "duplicates": {
                "type": "integer",
                "description": "Number of other registered entries sharing this model's name and version.",
                "minimum": 0
              }
            }
          }
        ]
      },
      "RegistryComponent": {
        "description": "A registered component, annotated with its duplicate count.",
        "allOf": [
          {
            "$id": "https://schemas.meshery.io/component.yaml",
            "$schema": "http://json-schema.org/draft-07/schema#",
            "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "id": {
                "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                "x-order": 1,
                "x-oapi-codegen-extra-tags": {
                  "yaml": "id",
                  "json": "id"
                },
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "schemaVersion": {
                "x-order": 2,
                "description": "Specifies the version of the schema to which the component definition conforms.",
                "x-oapi-codegen-extra-tags": {
                  "yaml": "schemaVersion",
                  "json": "schemaVersion"
                },
                "default": "components.meshery.io/v1beta3",
                "type": "string",
                "minLength": 2,
                "maxLength": 100,
                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                "example": [
                  "v1",
                  "v1alpha1",
                  "v2beta3",
                  "v1.custom-suffix",
                  "models.meshery.io/v1beta1",
                  "capability.meshery.io/v1alpha1"
                ]
              },
              "version": {
                "x-order": 3,
                "description": "Version of the component definition.",
                "minLength": 1,
                "maxLength": 50,
                "x-oapi-codegen-extra-tags": {
                  "yaml": "version",
                  "json": "version"
                },
                "type": "string",
                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
              },
              "displayName": {
                "x-order": 4,
                "description": "Name of the component in human-readable format.",
                "x-oapi-codegen-extra-tags": {
                  "yaml": "displayName",
                  "json": "displayName"
                },
                "type": "string",
                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
              },
              "description": {
                "x-order": 5,
                "type": "string",
                "description": "A written representation of the purpose and characteristics of the component.",
                "x-oapi-codegen-extra-tags": {
                  "yaml": "description",
                  "json": "description"
                },
                "maxLength": 5000
              },
              "format": {
                "x-order": 6,
                "type": "string",
                "enum": [
                  "JSON",
                  "CUE"
                ],
                "default": "JSON",
                "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                "x-oapi-codegen-extra-tags": {
                  "yaml": "format",
                  "json": "format"
                }
              },
              "model": {
                "x-go-type": "*modelv1beta1.ModelDefinition",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                  "name": "modelv1beta1"
                },
                "x-order": 7,
                "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",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "foreignKey:ModelID;references:ID",
                  "json": "model",
                  "yaml": "model"
                },
                "$id": "https://schemas.meshery.io/model.yaml",
                "$schema": "http://json-schema.org/draft-07/schema#",
                "additionalProperties": false,
                "type": "object",
                "properties": {
                  "id": {
                    "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                    "x-order": 1,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "id",
                      "json": "id"
                    },
                    "type": "string",
                    "format": "uuid",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "schemaVersion": {
                    "description": "Specifies the version of the schema used for the definition.",
                    "x-order": 2,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "schemaVersion",
                      "json": "schemaVersion"
                    },
                    "default": "models.meshery.io/v1beta1",
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 100,
                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                    "example": [
                      "v1",
                      "v1alpha1",
                      "v2beta3",
                      "v1.custom-suffix",
                      "models.meshery.io/v1beta1",
                      "capability.meshery.io/v1alpha1"
                    ]
                  },
                  "version": {
                    "description": "Version of the model definition.",
                    "type": "string",
                    "x-order": 3,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "version",
                      "json": "version"
                    },
                    "minLength": 5,
                    "maxLength": 100,
                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                  },
                  "name": {
                    "type": "string",
                    "description": "The unique name for the model within the scope of a registrant.",
                    "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                    "pattern": "^[a-z0-9-]+$",
                    "examples": [
                      "cert-manager"
                    ],
                    "x-order": 4,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "name",
                      "json": "name"
                    },
                    "default": "untitled-model"
                  },
                  "displayName": {
                    "description": "Human-readable name for the model.",
                    "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                    "minLength": 1,
                    "maxLength": 100,
                    "type": "string",
                    "pattern": "^[a-zA-Z0-9 ]+$",
                    "examples": [
                      "Cert Manager"
                    ],
                    "x-order": 5,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "displayName",
                      "json": "displayName"
                    },
                    "default": "Untitled Model"
                  },
                  "description": {
                    "type": "string",
                    "default": "A new Meshery model.",
                    "description": "Description of the model.",
                    "minLength": 1,
                    "maxLength": 1000,
                    "x-order": 6,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "description,omitempty",
                      "json": "description,omitempty"
                    }
                  },
                  "status": {
                    "type": "string",
                    "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                    "enum": [
                      "ignored",
                      "enabled",
                      "duplicate"
                    ],
                    "x-order": 7,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "status",
                      "json": "status"
                    },
                    "default": "enabled"
                  },
                  "registrant": {
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "registrant",
                      "json": "registrant",
                      "gorm": "foreignKey:RegistrantId;references:ID"
                    },
                    "x-order": 8,
                    "x-go-type": "connectionv1beta1.Connection",
                    "x-go-type-import": {
                      "path": "github.com/meshery/schemas/models/v1beta1/connection",
                      "name": "connectionv1beta1"
                    },
                    "$id": "https://schemas.meshery.io/connection.yaml",
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "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",
                    "additionalProperties": false,
                    "type": "object",
                    "required": [
                      "id",
                      "schemaVersion",
                      "name",
                      "type",
                      "subType",
                      "kind",
                      "status"
                    ],
                    "properties": {
                      "id": {
                        "description": "Connection ID",
                        "x-order": 1,
                        "x-go-name": "ID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "id",
                          "yaml": "id"
                        },
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "name": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "name",
                          "yaml": "name"
                        },
                        "x-order": 2,
                        "type": "string",
                        "description": "Connection Name"
                      },
                      "credentialId": {
                        "x-go-name": "CredentialID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "credential_id",
                          "yaml": "credentialId"
                        },
                        "x-order": 3,
                        "description": "Associated Credential ID",
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "type": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "type",
                          "yaml": "type"
                        },
                        "x-order": 4,
                        "type": "string",
                        "description": "Connection Type (platform, telemetry, collaboration)"
                      },
                      "subType": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "sub_type",
                          "yaml": "subType"
                        },
                        "x-order": 5,
                        "type": "string",
                        "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                      },
                      "kind": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "kind",
                          "yaml": "kind"
                        },
                        "x-order": 6,
                        "type": "string",
                        "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                      },
                      "metadata": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "metadata",
                          "yaml": "metadata"
                        },
                        "x-order": 7,
                        "x-go-type": "core.Map",
                        "x-go-type-import": {
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "type": "object",
                        "description": "Additional connection metadata"
                      },
                      "status": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "status",
                          "yaml": "status"
                        },
                        "x-order": 8,
                        "description": "Connection Status",
                        "type": "string",
                        "enum": [
                          "discovered",
                          "registered",
                          "connected",
                          "ignored",
                          "maintenance",
                          "disconnected",
                          "deleted",
                          "not found"
                        ]
                      },
                      "user_id": {
                        "x-go-name": "UserID",
                        "x-oapi-codegen-extra-tags": {
                          "db": "owner",
                          "yaml": "user_id"
                        },
                        "x-order": 9,
                        "description": "User ID who owns this connection",
                        "type": "string",
                        "format": "uuid",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "created_at": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "created_at",
                          "yaml": "created_at"
                        },
                        "x-order": 10,
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "updated_at": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "updated_at",
                          "yaml": "updated_at"
                        },
                        "x-order": 11,
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "deleted_at": {
                        "x-oapi-codegen-extra-tags": {
                          "db": "deleted_at",
                          "yaml": "deleted_at"
                        },
                        "x-order": 12,
                        "description": "SQL null Timestamp to handle null values of time.",
                        "x-go-type": "meshcore.NullTime",
                        "x-go-type-import": {
                          "name": "meshcore",
                          "path": "github.com/meshery/schemas/models/core"
                        },
                        "type": "string",
                        "format": "date-time",
                        "x-go-type-skip-optional-pointer": true
                      },
                      "environments": {
                        "type": "array",
                        "description": "Associated environments for this connection",
                        "items": {
                          "x-go-type": "*environmentv1beta1.Environment",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta1/environment",
                            "name": "environmentv1beta1"
                          },
                          "$id": "https://schemas.meshery.io/environment.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "title": "Environment",
                          "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                          "additionalProperties": false,
                          "type": "object",
                          "example": {
                            "id": "00000000-0000-0000-0000-000000000000",
                            "schemaVersion": "environments.meshery.io/v1beta1",
                            "name": "Production Environment",
                            "description": "Connections and credentials for the production cluster.",
                            "organization_id": "00000000-0000-0000-0000-000000000000",
                            "owner": "00000000-0000-0000-0000-000000000000",
                            "created_at": "0001-01-01T00:00:00Z",
                            "metadata": {},
                            "updated_at": "0001-01-01T00:00:00Z",
                            "deleted_at": null
                          },
                          "required": [
                            "id",
                            "schemaVersion",
                            "name",
                            "description",
                            "organization_id"
                          ],
                          "properties": {
                            "id": {
                              "description": "ID",
                              "x-order": 1,
                              "x-go-name": "ID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "id",
                                "yaml": "id"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "schemaVersion": {
                              "description": "Specifies the version of the schema to which the environment conforms.",
                              "x-order": 2,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "schemaVersion",
                                "db": "-",
                                "gorm": "-"
                              },
                              "default": "environments.meshery.io/v1beta1",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            },
                            "name": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "name",
                                "yaml": "name"
                              },
                              "x-order": 3,
                              "type": "string",
                              "maxLength": 100,
                              "description": "Environment name"
                            },
                            "description": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "description",
                                "yaml": "description"
                              },
                              "x-order": 4,
                              "type": "string",
                              "maxLength": 1000,
                              "description": "Environment description"
                            },
                            "organization_id": {
                              "x-go-name": "OrganizationID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "organization_id",
                                "yaml": "organization_id"
                              },
                              "x-order": 5,
                              "description": "Environment organization ID",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "owner": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "owner",
                                "yaml": "owner"
                              },
                              "x-order": 6,
                              "description": "Environment owner",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "created_at": {
                              "x-order": 7,
                              "description": "Timestamp when the resource was created.",
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "CreatedAt",
                              "x-oapi-codegen-extra-tags": {
                                "db": "created_at",
                                "yaml": "created_at"
                              },
                              "x-go-type-skip-optional-pointer": true
                            },
                            "metadata": {
                              "description": "Additional metadata associated with the environment.",
                              "x-oapi-codegen-extra-tags": {
                                "db": "metadata",
                                "yaml": "metadata"
                              },
                              "x-order": 8,
                              "x-go-type": "core.Map",
                              "x-go-type-skip-optional-pointer": true,
                              "type": "object"
                            },
                            "updated_at": {
                              "x-order": 9,
                              "description": "Timestamp when the resource was updated.",
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "UpdatedAt",
                              "x-oapi-codegen-extra-tags": {
                                "db": "updated_at",
                                "yaml": "updated_at"
                              },
                              "x-go-type-skip-optional-pointer": true
                            },
                            "deleted_at": {
                              "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                              "nullable": true,
                              "x-oapi-codegen-extra-tags": {
                                "db": "deleted_at",
                                "yaml": "deleted_at"
                              },
                              "x-go-type": "core.NullTime",
                              "x-go-import": "database/sql",
                              "x-order": 10,
                              "x-go-type-import": {
                                "name": "meshcore",
                                "path": "github.com/meshery/schemas/models/core"
                              },
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            }
                          }
                        },
                        "x-oapi-codegen-extra-tags": {
                          "db": "-",
                          "yaml": "environments",
                          "gorm": "-"
                        },
                        "x-go-type-skip-optional-pointer": true,
                        "x-order": 13
                      },
                      "schemaVersion": {
                        "description": "Specifies the version of the schema used for the definition.",
                        "x-order": 14,
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "schemaVersion",
                          "db": "-",
                          "gorm": "-"
                        },
                        "default": "connections.meshery.io/v1beta1",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 100,
                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                        "example": [
                          "v1",
                          "v1alpha1",
                          "v2beta3",
                          "v1.custom-suffix",
                          "models.meshery.io/v1beta1",
                          "capability.meshery.io/v1alpha1"
                        ]
                      }
                    }
                  },
                  "registrantId": {
                    "description": "ID of the registrant.",
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "connection_id",
                      "json": "connection_id",
                      "gorm": "column:connection_id"
                    },
                    "x-order": 8,
                    "type": "string",
                    "format": "uuid",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "categoryId": {
                    "description": "ID of the category.",
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "-",
                      "json": "-",
                      "gorm": "categoryID"
                    },
                    "x-order": 8,
                    "type": "string",
                    "format": "uuid",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "category": {
                    "x-order": 9,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "category",
                      "json": "category",
                      "gorm": "foreignKey:CategoryId;references:ID"
                    },
                    "x-go-type": "categoryv1beta1.CategoryDefinition",
                    "x-go-type-import": {
                      "path": "github.com/meshery/schemas/models/v1beta1/category",
                      "name": "categoryv1beta1"
                    },
                    "$id": "https://schemas.meshery.io/category.yaml",
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "type": "object",
                    "additionalProperties": false,
                    "description": "Category of the model.",
                    "required": [
                      "id",
                      "name",
                      "metadata"
                    ],
                    "properties": {
                      "id": {
                        "x-order": 1,
                        "type": "string",
                        "format": "uuid",
                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                        "x-go-type": "uuid.UUID",
                        "x-go-type-import": {
                          "path": "github.com/gofrs/uuid"
                        }
                      },
                      "name": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "name",
                          "json": "name",
                          "gorm": "name"
                        },
                        "default": "Uncategorized",
                        "description": "The category of the model that determines the main grouping.",
                        "helperText": "Select a model category",
                        "enum": [
                          "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"
                        ],
                        "x-order": 2
                      },
                      "metadata": {
                        "description": "Additional metadata associated with the category.",
                        "type": "object",
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "metadata,omitempty",
                          "json": "metadata,omitempty",
                          "gorm": "type:bytes;serializer:json"
                        },
                        "x-order": 3
                      }
                    }
                  },
                  "subCategory": {
                    "x-order": 10,
                    "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                    "x-go-type-import": {
                      "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                      "name": "subcategoryv1beta1"
                    },
                    "$id": "https://schemas.meshery.io/category.yaml",
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "type": "string",
                    "title": "SubCategory",
                    "description": "Sub category of the model determines the secondary grouping.",
                    "default": "Uncategorized",
                    "enum": [
                      "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"
                    ],
                    "minLength": 1,
                    "maxLength": 100,
                    "x-oapi-codegen-extra-tags": {
                      "yaml": "subCategory",
                      "json": "subCategory"
                    }
                  },
                  "metadata": {
                    "type": "object",
                    "description": "Metadata containing additional information associated with the model.",
                    "required": [
                      "svgWhite",
                      "svgColor"
                    ],
                    "properties": {
                      "capabilities": {
                        "type": "array",
                        "description": "Capabilities associated with the model",
                        "items": {
                          "x-go-type": "capabilityv1alpha1.Capability",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                            "name": "capabilityv1alpha1"
                          },
                          "$id": "https://schemas.meshery.io/capability.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                          "additionalProperties": false,
                          "type": "object",
                          "required": [
                            "description",
                            "schemaVersion",
                            "version",
                            "displayName",
                            "kind",
                            "type",
                            "subType",
                            "entityState",
                            "key",
                            "status"
                          ],
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json"
                          },
                          "properties": {
                            "schemaVersion": {
                              "description": "Specifies the version of the schema to which the capability definition conforms.",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            },
                            "version": {
                              "description": "Version of the capability definition.",
                              "type": "string",
                              "minLength": 5,
                              "maxLength": 100,
                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                            },
                            "displayName": {
                              "description": "Name of the capability in human-readible format.",
                              "type": "string",
                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                            },
                            "description": {
                              "type": "string",
                              "description": "A written representation of the purpose and characteristics of the capability.",
                              "maxLength": 5000
                            },
                            "kind": {
                              "description": "Top-level categorization of the capability",
                              "additionalProperties": false,
                              "anyOf": [
                                {
                                  "const": "action",
                                  "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                },
                                {
                                  "const": "mutate",
                                  "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                },
                                {
                                  "const": "view",
                                  "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                },
                                {
                                  "const": "interaction",
                                  "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                }
                              ],
                              "type": "string",
                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                            },
                            "type": {
                              "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                              "type": "string",
                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                            },
                            "subType": {
                              "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                              "type": "string",
                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                            },
                            "key": {
                              "description": "Key that backs the capability.",
                              "type": "string",
                              "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                            },
                            "entityState": {
                              "description": "State of the entity in which the capability is applicable.",
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "declaration",
                                  "instance"
                                ],
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                              }
                            },
                            "status": {
                              "type": "string",
                              "description": "Status of the capability",
                              "default": "enabled",
                              "enum": [
                                "enabled",
                                "disabled"
                              ]
                            },
                            "metadata": {
                              "type": "object",
                              "description": "Metadata contains additional information associated with the capability. Extension point.",
                              "additionalProperties": true
                            }
                          },
                          "default": [
                            {
                              "description": "Configure the visual styles for the component",
                              "displayName": "Styling",
                              "entityState": [
                                "declaration"
                              ],
                              "key": "",
                              "kind": "mutate",
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "status": "enabled",
                              "subType": "",
                              "type": "style",
                              "version": "0.7.0"
                            },
                            {
                              "description": "Change the shape of the component",
                              "displayName": "Change Shape",
                              "entityState": [
                                "declaration"
                              ],
                              "key": "",
                              "kind": "mutate",
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "status": "enabled",
                              "subType": "shape",
                              "type": "style",
                              "version": "0.7.0"
                            },
                            {
                              "description": "Drag and Drop a component into a parent component in graph view",
                              "displayName": "Compound Drag And Drop",
                              "entityState": [
                                "declaration"
                              ],
                              "key": "",
                              "kind": "interaction",
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "status": "enabled",
                              "subType": "compoundDnd",
                              "type": "graph",
                              "version": "0.7.0"
                            },
                            {
                              "description": "Add text to nodes body",
                              "displayName": "Body Text",
                              "entityState": [
                                "declaration"
                              ],
                              "key": "",
                              "kind": "mutate",
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "status": "enabled",
                              "subType": "body-text",
                              "type": "style",
                              "version": "0.7.0"
                            }
                          ]
                        },
                        "x-order": 1
                      },
                      "isAnnotation": {
                        "type": "boolean",
                        "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "isAnnotation",
                          "json": "isAnnotation"
                        },
                        "x-order": 2,
                        "default": false
                      },
                      "primaryColor": {
                        "type": "string",
                        "description": "Primary color associated with the model.",
                        "minLength": 1,
                        "maxLength": 50,
                        "default": "#00b39f",
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "primaryColor",
                          "json": "primaryColor"
                        },
                        "x-order": 3
                      },
                      "secondaryColor": {
                        "type": "string",
                        "description": "Secondary color associated with the model.",
                        "minLength": 1,
                        "maxLength": 50,
                        "default": "#00D3A9",
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "secondaryColor",
                          "json": "secondaryColor"
                        },
                        "x-order": 4
                      },
                      "svgWhite": {
                        "type": "string",
                        "description": "SVG representation of the model in white color.",
                        "minLength": 1,
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "svgWhite",
                          "json": "svgWhite"
                        },
                        "x-order": 5,
                        "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>"
                      },
                      "svgColor": {
                        "type": "string",
                        "description": "SVG representation of the model in colored format.",
                        "minLength": 1,
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "svgColor",
                          "json": "svgColor"
                        },
                        "x-order": 6,
                        "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>"
                      },
                      "svgComplete": {
                        "type": "string",
                        "description": "SVG representation of the complete model.",
                        "minLength": 1,
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "svgComplete",
                          "json": "svgComplete"
                        },
                        "x-order": 7
                      },
                      "shape": {
                        "x-order": 8,
                        "type": "string",
                        "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)",
                        "enum": [
                          "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"
                        ]
                      }
                    },
                    "x-oapi-codegen-extra-tags": {
                      "gorm": "type:bytes;serializer:json",
                      "json": "metadata",
                      "yaml": "metadata"
                    },
                    "x-order": 11,
                    "additionalProperties": true
                  },
                  "model": {
                    "x-oapi-codegen-extra-tags": {
                      "gorm": "type:bytes;serializer:json"
                    },
                    "x-order": 12,
                    "type": "object",
                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                    "required": [
                      "version"
                    ],
                    "properties": {
                      "version": {
                        "description": "Version of the model as defined by the registrant.",
                        "x-oapi-codegen-extra-tags": {
                          "json": "version"
                        },
                        "x-order": 1,
                        "type": "string",
                        "minLength": 5,
                        "maxLength": 100,
                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                      }
                    }
                  },
                  "relationships": {
                    "type": "array",
                    "x-go-type": "interface{}",
                    "x-oapi-codegen-extra-tags": {
                      "gorm": "-",
                      "json": "relationships",
                      "yaml": "relationships"
                    },
                    "description": "The relationships of the model."
                  },
                  "components": {
                    "type": "array",
                    "x-go-type": "interface{}",
                    "x-oapi-codegen-extra-tags": {
                      "gorm": "-",
                      "json": "components",
                      "yaml": "components"
                    },
                    "description": "The components of the model."
                  },
                  "componentsCount": {
                    "type": "integer",
                    "description": "Number of components associated with the model.",
                    "x-order": 13,
                    "x-oapi-codegen-extra-tags": {
                      "json": "components_count",
                      "yaml": "components_count",
                      "gorm": "-"
                    },
                    "default": 0,
                    "minimum": 0
                  },
                  "relationshipsCount": {
                    "type": "integer",
                    "description": "Number of relationships associated with the model.",
                    "x-order": 13,
                    "x-oapi-codegen-extra-tags": {
                      "gorm": "-",
                      "json": "relationships_count",
                      "yaml": "relationships_count"
                    },
                    "default": 0,
                    "minimum": 0
                  },
                  "created_at": {
                    "x-order": 14,
                    "description": "Timestamp when the resource was created.",
                    "x-go-type": "time.Time",
                    "type": "string",
                    "format": "date-time",
                    "x-go-name": "CreatedAt",
                    "x-oapi-codegen-extra-tags": {
                      "db": "created_at",
                      "yaml": "created_at"
                    },
                    "x-go-type-skip-optional-pointer": true
                  },
                  "updated_at": {
                    "x-order": 15,
                    "description": "Timestamp when the resource was updated.",
                    "x-go-type": "time.Time",
                    "type": "string",
                    "format": "date-time",
                    "x-go-name": "UpdatedAt",
                    "x-oapi-codegen-extra-tags": {
                      "db": "updated_at",
                      "yaml": "updated_at"
                    },
                    "x-go-type-skip-optional-pointer": true
                  }
                },
                "required": [
                  "id",
                  "schemaVersion",
                  "displayName",
                  "status",
                  "subCategory",
                  "model",
                  "name",
                  "description",
                  "version",
                  "registrant",
                  "category",
                  "categoryId",
                  "registrantId",
                  "relationshipsCount",
                  "componentsCount",
                  "components",
                  "relationships"
                ]
              },
              "modelReference": {
                "x-go-type": "modelv1beta1.ModelReference",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                  "name": "modelv1beta1"
                },
                "x-order": 8,
                "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",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "-"
                },
                "x-generate-db-helpers": true,
                "type": "object",
                "required": [
                  "id",
                  "name",
                  "version",
                  "displayName",
                  "model",
                  "registrant"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The unique name for the model within the scope of a registrant.",
                    "pattern": "^[a-z0-9-]+$",
                    "examples": [
                      "cert-manager"
                    ]
                  },
                  "version": {
                    "description": "Version of the model definition.",
                    "type": "string",
                    "minLength": 5,
                    "maxLength": 100,
                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                  },
                  "displayName": {
                    "type": "string",
                    "description": "Human-readable name for the model.",
                    "minLength": 1,
                    "maxLength": 100,
                    "pattern": "^[a-zA-Z0-9 ]+$",
                    "examples": [
                      "Cert Manager"
                    ]
                  },
                  "model": {
                    "type": "object",
                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                    "required": [
                      "version"
                    ],
                    "properties": {
                      "version": {
                        "description": "Version of the model as defined by the registrant.",
                        "x-oapi-codegen-extra-tags": {
                          "json": "version"
                        },
                        "x-order": 1,
                        "type": "string",
                        "minLength": 5,
                        "maxLength": 100,
                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                      }
                    }
                  },
                  "registrant": {
                    "x-go-type": "RegistrantReference",
                    "x-oapi-codegen-extra-tags": {
                      "json": "registrant"
                    },
                    "type": "object",
                    "required": [
                      "kind"
                    ],
                    "properties": {
                      "kind": {
                        "type": "string",
                        "description": "Kind of the registrant.",
                        "maxLength": 255
                      }
                    }
                  }
                }
              },
              "modelId": {
                "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.",
                "x-go-name": "ModelID",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                  "db": "model_id",
                  "yaml": "-",
                  "json": "-"
                },
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "styles": {
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json",
                  "yaml": "styles",
                  "json": "styles"
                },
                "x-go-type": "core.ComponentStyles",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/core",
                  "name": "core"
                },
                "x-order": 8,
                "type": "object",
                "description": "Visualization styles for a component",
                "required": [
                  "shape",
                  "primaryColor",
                  "svgColor",
                  "svgWhite",
                  "svgComplete"
                ],
                "allOf": [
                  {
                    "type": "object",
                    "description": "Common styles for all entities",
                    "additionalProperties": true,
                    "required": [
                      "primaryColor",
                      "svgColor",
                      "svgWhite",
                      "svgComplete"
                    ],
                    "properties": {
                      "primaryColor": {
                        "type": "string",
                        "description": "Primary color of the component used for UI representation.",
                        "maxLength": 500
                      },
                      "secondaryColor": {
                        "type": "string",
                        "description": "Secondary color of the entity used for UI representation.",
                        "maxLength": 500
                      },
                      "svgWhite": {
                        "type": "string",
                        "description": "White SVG of the entity used for UI representation on dark background.",
                        "maxLength": 500
                      },
                      "svgColor": {
                        "type": "string",
                        "description": "Colored SVG of the entity used for UI representation on light background.",
                        "maxLength": 500
                      },
                      "svgComplete": {
                        "type": "string",
                        "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                        "maxLength": 500
                      },
                      "color": {
                        "type": "string",
                        "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 500
                      },
                      "textOpacity": {
                        "type": "number",
                        "description": "The opacity of the label text, including its outline.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "fontFamily": {
                        "type": "string",
                        "description": "A comma-separated list of font names to use on the label text.",
                        "maxLength": 500
                      },
                      "fontSize": {
                        "type": "string",
                        "description": "The size of the label text.",
                        "maxLength": 500
                      },
                      "fontStyle": {
                        "type": "string",
                        "description": "A CSS font style to be applied to the label text.",
                        "maxLength": 500
                      },
                      "fontWeight": {
                        "type": "string",
                        "description": "A CSS font weight to be applied to the label text.",
                        "maxLength": 500
                      },
                      "textTransform": {
                        "type": "string",
                        "description": "A transformation to apply to the label text",
                        "enum": [
                          "none",
                          "uppercase",
                          "lowercase"
                        ]
                      },
                      "opacity": {
                        "type": "number",
                        "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.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "zIndex": {
                        "type": "integer",
                        "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.",
                        "minimum": 0
                      },
                      "label": {
                        "type": "string",
                        "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                        "maxLength": 500
                      },
                      "animation": {
                        "type": "object",
                        "description": "The animation to apply to the element. example ripple,bounce,etc"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "properties": {
                      "shape": {
                        "type": "string",
                        "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)",
                        "enum": [
                          "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"
                        ]
                      },
                      "position": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "x",
                          "y"
                        ],
                        "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.",
                        "properties": {
                          "x": {
                            "type": "number",
                            "description": "The x-coordinate of the node.",
                            "minimum": -1000000,
                            "maximum": 1000000,
                            "x-go-type": "float64"
                          },
                          "y": {
                            "type": "number",
                            "description": "The y-coordinate of the node.",
                            "minimum": -1000000,
                            "maximum": 1000000,
                            "x-go-type": "float64"
                          }
                        }
                      },
                      "bodyText": {
                        "type": "string",
                        "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                        "maxLength": 500
                      },
                      "bodyTextWrap": {
                        "type": "string",
                        "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                        "enum": [
                          "none",
                          "wrap",
                          "ellipsis"
                        ]
                      },
                      "bodyTextMaxWidth": {
                        "type": "string",
                        "description": "The maximum width for wrapping text in the node.",
                        "maxLength": 50
                      },
                      "bodyTextOpacity": {
                        "type": "number",
                        "description": "The opacity of the node's body text, including its outline.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "bodyTextBackgroundColor": {
                        "type": "string",
                        "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "bodyTextFontSize": {
                        "type": "number",
                        "description": "The size of the node's body text.",
                        "minimum": 0
                      },
                      "bodyTextColor": {
                        "type": "string",
                        "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "bodyTextFontWeight": {
                        "type": "string",
                        "description": "A CSS font weight to be applied to the node's body text.",
                        "maxLength": 50
                      },
                      "bodyTextHorizontalAlign": {
                        "type": "string",
                        "description": "A CSS horizontal alignment to be applied to the node's body text.",
                        "maxLength": 50
                      },
                      "bodyTextDecoration": {
                        "type": "string",
                        "description": "A CSS text decoration to be applied to the node's body text.",
                        "maxLength": 100
                      },
                      "bodyTextVerticalAlign": {
                        "type": "string",
                        "description": "A CSS vertical alignment to be applied to the node's body text.",
                        "maxLength": 50
                      },
                      "width": {
                        "type": "number",
                        "description": "The width of the node's body or the width of an edge's line.",
                        "minimum": 0
                      },
                      "height": {
                        "type": "number",
                        "description": "The height of the node's body",
                        "minimum": 0
                      },
                      "backgroundImage": {
                        "type": "string",
                        "format": "uri",
                        "description": "The URL that points to the image to show in the node.",
                        "maxLength": 2048
                      },
                      "backgroundColor": {
                        "type": "string",
                        "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "backgroundBlacken": {
                        "type": "number",
                        "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                        "maximum": 1,
                        "minimum": -1
                      },
                      "backgroundOpacity": {
                        "type": "number",
                        "description": "The opacity level of the node's background colour",
                        "maximum": 1,
                        "minimum": 0
                      },
                      "backgroundPositionX": {
                        "type": "string",
                        "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundPositionY": {
                        "type": "string",
                        "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundOffsetX": {
                        "type": "string",
                        "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundOffsetY": {
                        "type": "string",
                        "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundFit": {
                        "type": "string",
                        "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                        "enum": [
                          "none",
                          "contain",
                          "cover"
                        ]
                      },
                      "backgroundClip": {
                        "type": "string",
                        "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                        "enum": [
                          "none",
                          "node",
                          "node-border"
                        ]
                      },
                      "backgroundWidthRelativeTo": {
                        "type": "string",
                        "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                        "enum": [
                          "none",
                          "inner",
                          "outer"
                        ]
                      },
                      "backgroundHeightRelativeTo": {
                        "type": "string",
                        "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                        "enum": [
                          "none",
                          "inner",
                          "outer"
                        ]
                      },
                      "borderWidth": {
                        "type": "number",
                        "description": "The size of the node's border.",
                        "minimum": 0
                      },
                      "borderStyle": {
                        "type": "string",
                        "description": "The style of the node's border",
                        "enum": [
                          "solid",
                          "dotted",
                          "dashed",
                          "double"
                        ]
                      },
                      "borderColor": {
                        "type": "string",
                        "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "borderOpacity": {
                        "type": "number",
                        "description": "The opacity of the node's border",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "padding": {
                        "type": "number",
                        "description": "The amount of padding around all sides of the node.",
                        "minimum": 0
                      },
                      "textHalign": {
                        "type": "string",
                        "description": "The horizontal alignment of a node's label",
                        "enum": [
                          "left",
                          "center",
                          "right"
                        ]
                      },
                      "textValign": {
                        "type": "string",
                        "description": "The vertical alignment of a node's label",
                        "enum": [
                          "top",
                          "center",
                          "bottom"
                        ]
                      },
                      "ghost": {
                        "type": "string",
                        "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                        "default": "no",
                        "enum": [
                          "yes",
                          "no"
                        ]
                      },
                      "activeBgColor": {
                        "type": "string",
                        "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.",
                        "maxLength": 100
                      },
                      "activeBgOpacity": {
                        "type": "string",
                        "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                        "maxLength": 50
                      },
                      "activeBgSize": {
                        "type": "string",
                        "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                        "maxLength": 50
                      },
                      "selectionBoxColor": {
                        "type": "string",
                        "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.",
                        "maxLength": 100
                      },
                      "selectionBoxBorderWidth": {
                        "type": "number",
                        "description": "The size of the border on the selection box. Selector needs to be *core*",
                        "minimum": 0
                      },
                      "selectionBoxOpacity": {
                        "type": "number",
                        "description": "The opacity of the selection box. Selector needs to be *core*",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "outsideTextureBgColor": {
                        "type": "string",
                        "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.",
                        "maxLength": 100
                      },
                      "outsideTextureBgOpacity": {
                        "type": "number",
                        "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "shapePolygonPoints": {
                        "type": "string",
                        "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 )",
                        "maxLength": 2000
                      },
                      "menuBackgroundColor": {
                        "type": "string",
                        "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "menuBackgroundOpacity": {
                        "type": "number",
                        "description": "The opacity of the background of the component menu.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "menuForgroundColor": {
                        "type": "string",
                        "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      }
                    }
                  }
                ]
              },
              "capabilities": {
                "x-order": 9,
                "type": "array",
                "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.",
                "items": {
                  "x-go-type": "capabilityv1beta1.Capability",
                  "x-go-type-import": {
                    "path": "github.com/meshery/schemas/models/v1beta1/capability",
                    "name": "capabilityv1beta1"
                  },
                  "$id": "https://schemas.meshery.io/capability.yaml",
                  "$schema": "http://json-schema.org/draft-07/schema#",
                  "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                  "additionalProperties": false,
                  "type": "object",
                  "required": [
                    "description",
                    "schemaVersion",
                    "version",
                    "displayName",
                    "kind",
                    "type",
                    "subType",
                    "entityState",
                    "key",
                    "status"
                  ],
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "type:bytes;serializer:json"
                  },
                  "properties": {
                    "schemaVersion": {
                      "description": "Specifies the version of the schema to which the capability definition conforms.",
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 100,
                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                      "example": [
                        "v1",
                        "v1alpha1",
                        "v2beta3",
                        "v1.custom-suffix",
                        "models.meshery.io/v1beta1",
                        "capability.meshery.io/v1alpha1"
                      ]
                    },
                    "version": {
                      "description": "Version of the capability definition.",
                      "type": "string",
                      "minLength": 5,
                      "maxLength": 100,
                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                    },
                    "displayName": {
                      "description": "Name of the capability in human-readible format.",
                      "type": "string",
                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                    },
                    "description": {
                      "type": "string",
                      "description": "A written representation of the purpose and characteristics of the capability.",
                      "maxLength": 5000
                    },
                    "kind": {
                      "description": "Top-level categorization of the capability",
                      "additionalProperties": false,
                      "anyOf": [
                        {
                          "const": "action",
                          "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                        },
                        {
                          "const": "mutate",
                          "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                        },
                        {
                          "const": "view",
                          "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                        },
                        {
                          "const": "interaction",
                          "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                        }
                      ],
                      "type": "string",
                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                    },
                    "type": {
                      "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                      "type": "string",
                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                    },
                    "subType": {
                      "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                      "type": "string",
                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                    },
                    "key": {
                      "description": "Key that backs the capability.",
                      "type": "string",
                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                    },
                    "entityState": {
                      "description": "State of the entity in which the capability is applicable.",
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "declaration",
                          "instance"
                        ],
                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                        "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                      }
                    },
                    "status": {
                      "type": "string",
                      "description": "Status of the capability",
                      "default": "enabled",
                      "enum": [
                        "enabled",
                        "disabled"
                      ]
                    },
                    "metadata": {
                      "type": "object",
                      "description": "Metadata contains additional information associated with the capability. Extension point.",
                      "additionalProperties": true
                    }
                  },
                  "default": [
                    {
                      "description": "Configure the visual styles for the component",
                      "displayName": "Styling",
                      "entityState": [
                        "declaration"
                      ],
                      "key": "",
                      "kind": "mutate",
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "status": "enabled",
                      "subType": "",
                      "type": "style",
                      "version": "0.7.0"
                    },
                    {
                      "description": "Change the shape of the component",
                      "displayName": "Change Shape",
                      "entityState": [
                        "declaration"
                      ],
                      "key": "",
                      "kind": "mutate",
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "status": "enabled",
                      "subType": "shape",
                      "type": "style",
                      "version": "0.7.0"
                    },
                    {
                      "description": "Drag and Drop a component into a parent component in graph view",
                      "displayName": "Compound Drag And Drop",
                      "entityState": [
                        "declaration"
                      ],
                      "key": "",
                      "kind": "interaction",
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "status": "enabled",
                      "subType": "compoundDnd",
                      "type": "graph",
                      "version": "0.7.0"
                    },
                    {
                      "description": "Add text to nodes body",
                      "displayName": "Body Text",
                      "entityState": [
                        "declaration"
                      ],
                      "key": "",
                      "kind": "mutate",
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "status": "enabled",
                      "subType": "body-text",
                      "type": "style",
                      "version": "0.7.0"
                    }
                  ]
                },
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json",
                  "yaml": "capabilities",
                  "json": "capabilities"
                },
                "default": [
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Performance Test",
                    "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                    "kind": "action",
                    "type": "operator",
                    "subType": "perf-test",
                    "key": "",
                    "entityState": [
                      "instance"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Workload Configuration",
                    "description": "Configure the workload specific setting of a component",
                    "kind": "mutate",
                    "type": "configuration",
                    "subType": "config",
                    "key": "",
                    "entityState": [
                      "declaration"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Labels and Annotations Configuration",
                    "description": "Configure Labels And Annotations for the component",
                    "kind": "mutate",
                    "type": "configuration",
                    "subType": "labels-and-annotations",
                    "key": "",
                    "entityState": [
                      "declaration"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Relationships",
                    "description": "View relationships for the component",
                    "kind": "view",
                    "type": "configuration",
                    "subType": "relationship",
                    "key": "",
                    "entityState": [
                      "declaration",
                      "instance"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Json Schema",
                    "description": "View Component Definition ",
                    "kind": "view",
                    "type": "configuration",
                    "subType": "definition",
                    "key": "",
                    "entityState": [
                      "declaration",
                      "instance"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Styling",
                    "description": "Configure the visual styles for the component",
                    "kind": "mutate",
                    "type": "style",
                    "subType": "",
                    "key": "",
                    "entityState": [
                      "declaration"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Change Shape",
                    "description": "Change the shape of the component",
                    "kind": "mutate",
                    "type": "style",
                    "subType": "shape",
                    "key": "",
                    "entityState": [
                      "declaration"
                    ],
                    "status": "enabled",
                    "metadata": null
                  },
                  {
                    "schemaVersion": "capability.meshery.io/v1beta1",
                    "version": "0.7.0",
                    "displayName": "Compound Drag And Drop",
                    "description": "Drag and Drop a component into a parent component in graph view",
                    "kind": "interaction",
                    "type": "graph",
                    "subType": "compoundDnd",
                    "key": "",
                    "entityState": [
                      "declaration"
                    ],
                    "status": "enabled",
                    "metadata": null
                  }
                ]
              },
              "status": {
                "x-order": 10,
                "type": "string",
                "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                "default": "enabled",
                "enum": [
                  "ignored",
                  "enabled",
                  "duplicate",
                  "resolved",
                  "open"
                ],
                "x-oapi-codegen-extra-tags": {
                  "yaml": "status",
                  "json": "status"
                }
              },
              "metadata": {
                "x-order": 11,
                "type": "object",
                "description": "Metadata contains additional information associated with the component.",
                "required": [
                  "genealogy",
                  "isAnnotation",
                  "isNamespaced",
                  "published",
                  "instanceDetails",
                  "configurationUISchema"
                ],
                "properties": {
                  "genealogy": {
                    "x-order": 1,
                    "type": "string",
                    "description": "Genealogy represents the various representational states of the component.",
                    "maxLength": 1000
                  },
                  "isAnnotation": {
                    "x-order": 2,
                    "type": "boolean",
                    "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.",
                    "default": false
                  },
                  "isNamespaced": {
                    "x-order": 3,
                    "type": "boolean",
                    "description": "Identifies whether the component is scoped to namespace or cluster wide."
                  },
                  "published": {
                    "x-order": 4,
                    "type": "boolean",
                    "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."
                  },
                  "instanceDetails": {
                    "x-order": 5,
                    "type": "object",
                    "description": "InstanceDetails contains information about the instance of the component."
                  },
                  "configurationUISchema": {
                    "x-order": 6,
                    "type": "string",
                    "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/ .",
                    "maxLength": 20000
                  }
                },
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json"
                },
                "additionalProperties": true
              },
              "configuration": {
                "x-order": 12,
                "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                "type": "object",
                "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json"
                }
              },
              "component": {
                "x-order": 13,
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json"
                },
                "x-go-type": "Component",
                "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                "type": "object",
                "properties": {
                  "version": {
                    "type": "string",
                    "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                    "x-order": 1,
                    "maxLength": 500
                  },
                  "kind": {
                    "type": "string",
                    "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                    "x-order": 2,
                    "maxLength": 255
                  },
                  "schema": {
                    "type": "string",
                    "description": "JSON schema of the object as defined by the registrant.",
                    "x-order": 3,
                    "maxLength": 500
                  }
                },
                "required": [
                  "version",
                  "kind",
                  "schema"
                ]
              },
              "createdAt": {
                "description": "Timestamp when the component was created.",
                "x-oapi-codegen-extra-tags": {
                  "db": "created_at",
                  "yaml": "createdAt",
                  "json": "createdAt"
                },
                "x-order": 14,
                "x-go-type": "time.Time",
                "type": "string",
                "format": "date-time",
                "x-go-name": "CreatedAt",
                "x-go-type-skip-optional-pointer": true
              },
              "updatedAt": {
                "description": "Timestamp when the component was last updated.",
                "x-oapi-codegen-extra-tags": {
                  "db": "updated_at",
                  "yaml": "updatedAt",
                  "json": "updatedAt"
                },
                "x-order": 15,
                "x-go-type": "time.Time",
                "type": "string",
                "format": "date-time",
                "x-go-name": "UpdatedAt",
                "x-go-type-skip-optional-pointer": true
              },
              "deletedAt": {
                "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                "x-oapi-codegen-extra-tags": {
                  "db": "deleted_at",
                  "json": "deletedAt,omitempty",
                  "yaml": "deletedAt,omitempty"
                },
                "x-order": 16,
                "x-go-type": "NullTime",
                "type": "string",
                "format": "date-time",
                "x-go-type-skip-optional-pointer": true
              }
            },
            "required": [
              "id",
              "displayName",
              "description",
              "schemaVersion",
              "format",
              "version",
              "configuration",
              "metadata",
              "model",
              "modelReference",
              "component",
              "createdAt",
              "updatedAt"
            ]
          },
          {
            "type": "object",
            "properties": {
              "duplicates": {
                "type": "integer",
                "description": "Number of other registered entries sharing this component's kind, version, and model.",
                "minimum": 0
              }
            }
          }
        ]
      },
      "RegistryModelsPage": {
        "description": "A page of registered models.",
        "allOf": [
          {
            "type": "object",
            "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
            "properties": {
              "page": {
                "type": "integer",
                "description": "Current page number of the result set.",
                "minimum": 0
              },
              "pageSize": {
                "type": "integer",
                "description": "Number of items in the page.",
                "minimum": 0
              },
              "totalCount": {
                "type": "integer",
                "description": "Total number of items available.",
                "minimum": 0
              },
              "page_size": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `pageSize`.",
                "minimum": 0,
                "deprecated": true
              },
              "total_count": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `totalCount`.",
                "minimum": 0,
                "deprecated": true
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "models": {
                "type": "array",
                "items": {
                  "description": "A registered model, annotated with its duplicate count.",
                  "allOf": [
                    {
                      "$id": "https://schemas.meshery.io/model.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "description": "Meshery Models serve as a portable unit of packaging to define managed entities, their relationships, and capabilities.",
                      "additionalProperties": false,
                      "type": "object",
                      "properties": {
                        "id": {
                          "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                          "x-order": 1,
                          "x-oapi-codegen-extra-tags": {
                            "json": "id"
                          },
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "schemaVersion": {
                          "description": "Specifies the version of the schema used for the definition.",
                          "x-order": 2,
                          "x-oapi-codegen-extra-tags": {
                            "json": "schemaVersion"
                          },
                          "default": "models.meshery.io/v1beta2",
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 100,
                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                          "example": [
                            "v1",
                            "v1alpha1",
                            "v2beta3",
                            "v1.custom-suffix",
                            "models.meshery.io/v1beta1",
                            "capability.meshery.io/v1alpha1"
                          ]
                        },
                        "version": {
                          "description": "Version of the model definition.",
                          "type": "string",
                          "x-order": 3,
                          "x-oapi-codegen-extra-tags": {
                            "json": "version"
                          },
                          "minLength": 5,
                          "maxLength": 100,
                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                        },
                        "name": {
                          "type": "string",
                          "description": "The unique name for the model within the scope of a registrant.",
                          "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                          "pattern": "^[a-z0-9-]+$",
                          "examples": [
                            "cert-manager"
                          ],
                          "x-order": 4,
                          "x-oapi-codegen-extra-tags": {
                            "json": "name"
                          },
                          "default": "untitled-model"
                        },
                        "displayName": {
                          "description": "Human-readable name for the model.",
                          "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                          "minLength": 1,
                          "maxLength": 100,
                          "type": "string",
                          "pattern": "^[a-zA-Z0-9 ]+$",
                          "examples": [
                            "Cert Manager"
                          ],
                          "x-order": 5,
                          "x-oapi-codegen-extra-tags": {
                            "json": "displayName"
                          },
                          "default": "Untitled Model"
                        },
                        "description": {
                          "type": "string",
                          "default": "A new Meshery model.",
                          "description": "Description of the model.",
                          "minLength": 1,
                          "maxLength": 1000,
                          "x-order": 6,
                          "x-oapi-codegen-extra-tags": {
                            "json": "description,omitempty"
                          }
                        },
                        "status": {
                          "type": "string",
                          "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                          "enum": [
                            "ignored",
                            "enabled",
                            "duplicate"
                          ],
                          "x-order": 7,
                          "x-oapi-codegen-extra-tags": {
                            "json": "status"
                          },
                          "default": "enabled"
                        },
                        "registrant": {
                          "description": "Connection identifying the entity that registered this model.",
                          "x-oapi-codegen-extra-tags": {
                            "json": "registrant",
                            "gorm": "foreignKey:RegistrantId;references:ID"
                          },
                          "x-order": 8,
                          "x-go-type": "connectionv1beta1.Connection",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta1/connection",
                            "name": "connectionv1beta1"
                          },
                          "$id": "https://schemas.meshery.io/connection.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "additionalProperties": false,
                          "type": "object",
                          "required": [
                            "id",
                            "schemaVersion",
                            "name",
                            "type",
                            "subType",
                            "kind",
                            "status"
                          ],
                          "properties": {
                            "id": {
                              "description": "Connection ID",
                              "x-order": 1,
                              "x-go-name": "ID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "id",
                                "yaml": "id"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "name": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "name",
                                "yaml": "name"
                              },
                              "x-order": 2,
                              "type": "string",
                              "description": "Connection Name"
                            },
                            "credentialId": {
                              "x-go-name": "CredentialID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "credential_id",
                                "yaml": "credentialId"
                              },
                              "x-order": 3,
                              "description": "Associated Credential ID",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "type": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "type",
                                "yaml": "type"
                              },
                              "x-order": 4,
                              "type": "string",
                              "description": "Connection Type (platform, telemetry, collaboration)"
                            },
                            "subType": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "sub_type",
                                "yaml": "subType"
                              },
                              "x-order": 5,
                              "type": "string",
                              "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                            },
                            "kind": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "kind",
                                "yaml": "kind"
                              },
                              "x-order": 6,
                              "type": "string",
                              "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                            },
                            "metadata": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "metadata",
                                "yaml": "metadata"
                              },
                              "x-order": 7,
                              "x-go-type": "core.Map",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/core"
                              },
                              "x-go-type-skip-optional-pointer": true,
                              "type": "object",
                              "description": "Additional connection metadata"
                            },
                            "status": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "status",
                                "yaml": "status"
                              },
                              "x-order": 8,
                              "description": "Connection Status",
                              "type": "string",
                              "enum": [
                                "discovered",
                                "registered",
                                "connected",
                                "ignored",
                                "maintenance",
                                "disconnected",
                                "deleted",
                                "not found"
                              ]
                            },
                            "user_id": {
                              "x-go-name": "UserID",
                              "x-oapi-codegen-extra-tags": {
                                "db": "owner",
                                "yaml": "user_id"
                              },
                              "x-order": 9,
                              "description": "User ID who owns this connection",
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "created_at": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "created_at",
                                "yaml": "created_at"
                              },
                              "x-order": 10,
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "updated_at": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "updated_at",
                                "yaml": "updated_at"
                              },
                              "x-order": 11,
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "deleted_at": {
                              "x-oapi-codegen-extra-tags": {
                                "db": "deleted_at",
                                "yaml": "deleted_at"
                              },
                              "x-order": 12,
                              "description": "SQL null Timestamp to handle null values of time.",
                              "x-go-type": "meshcore.NullTime",
                              "x-go-type-import": {
                                "name": "meshcore",
                                "path": "github.com/meshery/schemas/models/core"
                              },
                              "type": "string",
                              "format": "date-time",
                              "x-go-type-skip-optional-pointer": true
                            },
                            "environments": {
                              "type": "array",
                              "description": "Associated environments for this connection",
                              "items": {
                                "x-go-type": "*environmentv1beta1.Environment",
                                "x-go-type-import": {
                                  "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                  "name": "environmentv1beta1"
                                },
                                "$id": "https://schemas.meshery.io/environment.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "title": "Environment",
                                "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                "additionalProperties": false,
                                "type": "object",
                                "example": {
                                  "id": "00000000-0000-0000-0000-000000000000",
                                  "schemaVersion": "environments.meshery.io/v1beta1",
                                  "name": "Production Environment",
                                  "description": "Connections and credentials for the production cluster.",
                                  "organization_id": "00000000-0000-0000-0000-000000000000",
                                  "owner": "00000000-0000-0000-0000-000000000000",
                                  "created_at": "0001-01-01T00:00:00Z",
                                  "metadata": {},
                                  "updated_at": "0001-01-01T00:00:00Z",
                                  "deleted_at": null
                                },
                                "required": [
                                  "id",
                                  "schemaVersion",
                                  "name",
                                  "description",
                                  "organization_id"
                                ],
                                "properties": {
                                  "id": {
                                    "description": "ID",
                                    "x-order": 1,
                                    "x-go-name": "ID",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "id",
                                      "yaml": "id"
                                    },
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema to which the environment conforms.",
                                    "x-order": 2,
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "schemaVersion",
                                      "db": "-",
                                      "gorm": "-"
                                    },
                                    "default": "environments.meshery.io/v1beta1",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "name": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "name",
                                      "yaml": "name"
                                    },
                                    "x-order": 3,
                                    "type": "string",
                                    "maxLength": 100,
                                    "description": "Environment name"
                                  },
                                  "description": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "description",
                                      "yaml": "description"
                                    },
                                    "x-order": 4,
                                    "type": "string",
                                    "maxLength": 1000,
                                    "description": "Environment description"
                                  },
                                  "organization_id": {
                                    "x-go-name": "OrganizationID",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "organization_id",
                                      "yaml": "organization_id"
                                    },
                                    "x-order": 5,
                                    "description": "Environment organization ID",
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "owner": {
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "owner",
                                      "yaml": "owner"
                                    },
                                    "x-order": 6,
                                    "description": "Environment owner",
                                    "type": "string",
                                    "format": "uuid",
                                    "x-go-type": "uuid.UUID",
                                    "x-go-type-import": {
                                      "path": "github.com/gofrs/uuid"
                                    }
                                  },
                                  "created_at": {
                                    "x-order": 7,
                                    "description": "Timestamp when the resource was created.",
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "CreatedAt",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "created_at",
                                      "yaml": "created_at"
                                    },
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "metadata": {
                                    "description": "Additional metadata associated with the environment.",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "metadata",
                                      "yaml": "metadata"
                                    },
                                    "x-order": 8,
                                    "x-go-type": "core.Map",
                                    "x-go-type-skip-optional-pointer": true,
                                    "type": "object"
                                  },
                                  "updated_at": {
                                    "x-order": 9,
                                    "description": "Timestamp when the resource was updated.",
                                    "x-go-type": "time.Time",
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-name": "UpdatedAt",
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "updated_at",
                                      "yaml": "updated_at"
                                    },
                                    "x-go-type-skip-optional-pointer": true
                                  },
                                  "deleted_at": {
                                    "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                    "nullable": true,
                                    "x-oapi-codegen-extra-tags": {
                                      "db": "deleted_at",
                                      "yaml": "deleted_at"
                                    },
                                    "x-go-type": "core.NullTime",
                                    "x-go-import": "database/sql",
                                    "x-order": 10,
                                    "x-go-type-import": {
                                      "name": "meshcore",
                                      "path": "github.com/meshery/schemas/models/core"
                                    },
                                    "type": "string",
                                    "format": "date-time",
                                    "x-go-type-skip-optional-pointer": true
                                  }
                                }
                              },
                              "x-oapi-codegen-extra-tags": {
                                "db": "-",
                                "yaml": "environments",
                                "gorm": "-"
                              },
                              "x-go-type-skip-optional-pointer": true,
                              "x-order": 13
                            },
                            "schemaVersion": {
                              "description": "Specifies the version of the schema used for the definition.",
                              "x-order": 14,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "schemaVersion",
                                "db": "-",
                                "gorm": "-"
                              },
                              "default": "connections.meshery.io/v1beta1",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            }
                          }
                        },
                        "registrantId": {
                          "description": "ID of the registrant.",
                          "x-oapi-codegen-extra-tags": {
                            "json": "registrantId",
                            "gorm": "column:connection_id"
                          },
                          "x-order": 8,
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "categoryId": {
                          "description": "ID of the category.",
                          "x-oapi-codegen-extra-tags": {
                            "json": "-",
                            "yaml": "-",
                            "gorm": "categoryID"
                          },
                          "x-order": 8,
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "category": {
                          "description": "Category the model belongs to.",
                          "x-order": 9,
                          "x-oapi-codegen-extra-tags": {
                            "json": "category",
                            "gorm": "foreignKey:CategoryId;references:ID"
                          },
                          "x-go-type": "categoryv1beta1.CategoryDefinition",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta1/category",
                            "name": "categoryv1beta1"
                          },
                          "$id": "https://schemas.meshery.io/category.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "id",
                            "name",
                            "metadata"
                          ],
                          "properties": {
                            "id": {
                              "x-order": 1,
                              "type": "string",
                              "format": "uuid",
                              "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "name": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "name",
                                "json": "name",
                                "gorm": "name"
                              },
                              "default": "Uncategorized",
                              "description": "The category of the model that determines the main grouping.",
                              "helperText": "Select a model category",
                              "enum": [
                                "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"
                              ],
                              "x-order": 2
                            },
                            "metadata": {
                              "description": "Additional metadata associated with the category.",
                              "type": "object",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "metadata,omitempty",
                                "json": "metadata,omitempty",
                                "gorm": "type:bytes;serializer:json"
                              },
                              "x-order": 3
                            }
                          }
                        },
                        "subCategory": {
                          "description": "Sub-category the model belongs to.",
                          "x-order": 10,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "subCategory",
                            "json": "subCategory"
                          },
                          "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                            "name": "subcategoryv1beta1"
                          },
                          "$id": "https://schemas.meshery.io/category.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "type": "string",
                          "title": "SubCategory",
                          "default": "Uncategorized",
                          "enum": [
                            "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"
                          ],
                          "minLength": 1,
                          "maxLength": 100
                        },
                        "metadata": {
                          "type": "object",
                          "description": "Metadata containing additional information associated with the model.",
                          "required": [
                            "svgWhite",
                            "svgColor"
                          ],
                          "properties": {
                            "capabilities": {
                              "type": "array",
                              "description": "Capabilities associated with the model",
                              "items": {
                                "x-go-type": "capabilityv1alpha1.Capability",
                                "x-go-type-import": {
                                  "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                  "name": "capabilityv1alpha1"
                                },
                                "$id": "https://schemas.meshery.io/capability.yaml",
                                "$schema": "http://json-schema.org/draft-07/schema#",
                                "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                "additionalProperties": false,
                                "type": "object",
                                "required": [
                                  "description",
                                  "schemaVersion",
                                  "version",
                                  "displayName",
                                  "kind",
                                  "type",
                                  "subType",
                                  "entityState",
                                  "key",
                                  "status"
                                ],
                                "x-oapi-codegen-extra-tags": {
                                  "gorm": "type:bytes;serializer:json"
                                },
                                "properties": {
                                  "schemaVersion": {
                                    "description": "Specifies the version of the schema to which the capability definition conforms.",
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 100,
                                    "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                    "example": [
                                      "v1",
                                      "v1alpha1",
                                      "v2beta3",
                                      "v1.custom-suffix",
                                      "models.meshery.io/v1beta1",
                                      "capability.meshery.io/v1alpha1"
                                    ]
                                  },
                                  "version": {
                                    "description": "Version of the capability definition.",
                                    "type": "string",
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  },
                                  "displayName": {
                                    "description": "Name of the capability in human-readible format.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "description": {
                                    "type": "string",
                                    "description": "A written representation of the purpose and characteristics of the capability.",
                                    "maxLength": 5000
                                  },
                                  "kind": {
                                    "description": "Top-level categorization of the capability",
                                    "additionalProperties": false,
                                    "anyOf": [
                                      {
                                        "const": "action",
                                        "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                      },
                                      {
                                        "const": "mutate",
                                        "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                      },
                                      {
                                        "const": "view",
                                        "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                      },
                                      {
                                        "const": "interaction",
                                        "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                      }
                                    ],
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "type": {
                                    "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "subType": {
                                    "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "key": {
                                    "description": "Key that backs the capability.",
                                    "type": "string",
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                  },
                                  "entityState": {
                                    "description": "State of the entity in which the capability is applicable.",
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "enum": [
                                        "declaration",
                                        "instance"
                                      ],
                                      "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                      "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                    }
                                  },
                                  "status": {
                                    "type": "string",
                                    "description": "Status of the capability",
                                    "default": "enabled",
                                    "enum": [
                                      "enabled",
                                      "disabled"
                                    ]
                                  },
                                  "metadata": {
                                    "type": "object",
                                    "description": "Metadata contains additional information associated with the capability. Extension point.",
                                    "additionalProperties": true
                                  }
                                },
                                "default": [
                                  {
                                    "description": "Configure the visual styles for the component",
                                    "displayName": "Styling",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "mutate",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "",
                                    "type": "style",
                                    "version": "0.7.0"
                                  },
                                  {
                                    "description": "Change the shape of the component",
                                    "displayName": "Change Shape",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "mutate",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "shape",
                                    "type": "style",
                                    "version": "0.7.0"
                                  },
                                  {
                                    "description": "Drag and Drop a component into a parent component in graph view",
                                    "displayName": "Compound Drag And Drop",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "interaction",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "compoundDnd",
                                    "type": "graph",
                                    "version": "0.7.0"
                                  },
                                  {
                                    "description": "Add text to nodes body",
                                    "displayName": "Body Text",
                                    "entityState": [
                                      "declaration"
                                    ],
                                    "key": "",
                                    "kind": "mutate",
                                    "schemaVersion": "capability.meshery.io/v1beta1",
                                    "status": "enabled",
                                    "subType": "body-text",
                                    "type": "style",
                                    "version": "0.7.0"
                                  }
                                ]
                              },
                              "x-order": 1
                            },
                            "isAnnotation": {
                              "type": "boolean",
                              "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                              "x-oapi-codegen-extra-tags": {
                                "json": "isAnnotation"
                              },
                              "x-order": 2,
                              "default": false
                            },
                            "primaryColor": {
                              "type": "string",
                              "description": "Primary color associated with the model.",
                              "minLength": 1,
                              "maxLength": 50,
                              "default": "#00b39f",
                              "x-oapi-codegen-extra-tags": {
                                "json": "primaryColor"
                              },
                              "x-order": 3
                            },
                            "secondaryColor": {
                              "type": "string",
                              "description": "Secondary color associated with the model.",
                              "minLength": 1,
                              "maxLength": 50,
                              "default": "#00D3A9",
                              "x-oapi-codegen-extra-tags": {
                                "json": "secondaryColor"
                              },
                              "x-order": 4
                            },
                            "svgWhite": {
                              "type": "string",
                              "description": "SVG representation of the model in white color.",
                              "minLength": 1,
                              "x-oapi-codegen-extra-tags": {
                                "json": "svgWhite"
                              },
                              "x-order": 5,
                              "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>"
                            },
                            "svgColor": {
                              "type": "string",
                              "description": "SVG representation of the model in colored format.",
                              "minLength": 1,
                              "x-oapi-codegen-extra-tags": {
                                "json": "svgColor"
                              },
                              "x-order": 6,
                              "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>"
                            },
                            "svgComplete": {
                              "type": "string",
                              "description": "SVG representation of the complete model.",
                              "minLength": 1,
                              "x-oapi-codegen-extra-tags": {
                                "json": "svgComplete"
                              },
                              "x-order": 7
                            },
                            "shape": {
                              "description": "Visual shape used to render the model's entities in design canvases.",
                              "x-order": 8,
                              "type": "string",
                              "enum": [
                                "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"
                              ]
                            }
                          },
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json",
                            "json": "metadata"
                          },
                          "x-order": 11,
                          "additionalProperties": true
                        },
                        "model": {
                          "description": "Registrant-defined data associated with the model.",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json"
                          },
                          "x-order": 12,
                          "type": "object",
                          "required": [
                            "version"
                          ],
                          "properties": {
                            "version": {
                              "description": "Version of the model as defined by the registrant.",
                              "x-oapi-codegen-extra-tags": {
                                "json": "version"
                              },
                              "x-order": 1,
                              "type": "string",
                              "minLength": 5,
                              "maxLength": 100,
                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                            }
                          }
                        },
                        "relationships": {
                          "type": "array",
                          "x-go-type": "interface{}",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "-",
                            "json": "relationships"
                          },
                          "description": "The relationships of the model."
                        },
                        "components": {
                          "type": "array",
                          "x-go-type": "interface{}",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "-",
                            "json": "components"
                          },
                          "description": "The components of the model."
                        },
                        "componentsCount": {
                          "type": "integer",
                          "description": "Number of components associated with the model.",
                          "x-order": 13,
                          "x-oapi-codegen-extra-tags": {
                            "json": "componentsCount",
                            "gorm": "-"
                          },
                          "default": 0,
                          "minimum": 0
                        },
                        "relationshipsCount": {
                          "type": "integer",
                          "description": "Number of relationships associated with the model.",
                          "x-order": 13,
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "-",
                            "json": "relationshipsCount"
                          },
                          "default": 0,
                          "minimum": 0
                        },
                        "createdAt": {
                          "description": "Timestamp when the model was created.",
                          "x-oapi-codegen-extra-tags": {
                            "db": "created_at",
                            "yaml": "created_at",
                            "json": "createdAt"
                          },
                          "x-order": 14,
                          "x-go-type": "time.Time",
                          "type": "string",
                          "format": "date-time",
                          "x-go-name": "CreatedAt",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "updatedAt": {
                          "description": "Timestamp when the model was last updated.",
                          "x-oapi-codegen-extra-tags": {
                            "db": "updated_at",
                            "yaml": "updated_at",
                            "json": "updatedAt"
                          },
                          "x-order": 15,
                          "x-go-type": "time.Time",
                          "type": "string",
                          "format": "date-time",
                          "x-go-name": "UpdatedAt",
                          "x-go-type-skip-optional-pointer": true
                        }
                      },
                      "required": [
                        "id",
                        "schemaVersion",
                        "displayName",
                        "status",
                        "subCategory",
                        "model",
                        "name",
                        "description",
                        "version",
                        "registrant",
                        "category",
                        "categoryId",
                        "registrantId",
                        "relationshipsCount",
                        "componentsCount",
                        "components",
                        "relationships"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "duplicates": {
                          "type": "integer",
                          "description": "Number of other registered entries sharing this model's name and version.",
                          "minimum": 0
                        }
                      }
                    }
                  ]
                },
                "description": "The models matching the query."
              }
            }
          }
        ]
      },
      "RegistryComponentsPage": {
        "description": "A page of registered components.",
        "allOf": [
          {
            "type": "object",
            "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
            "properties": {
              "page": {
                "type": "integer",
                "description": "Current page number of the result set.",
                "minimum": 0
              },
              "pageSize": {
                "type": "integer",
                "description": "Number of items in the page.",
                "minimum": 0
              },
              "totalCount": {
                "type": "integer",
                "description": "Total number of items available.",
                "minimum": 0
              },
              "page_size": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `pageSize`.",
                "minimum": 0,
                "deprecated": true
              },
              "total_count": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `totalCount`.",
                "minimum": 0,
                "deprecated": true
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "components": {
                "type": "array",
                "items": {
                  "description": "A registered component, annotated with its duplicate count.",
                  "allOf": [
                    {
                      "$id": "https://schemas.meshery.io/component.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
                      "additionalProperties": false,
                      "type": "object",
                      "properties": {
                        "id": {
                          "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                          "x-order": 1,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "id",
                            "json": "id"
                          },
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "schemaVersion": {
                          "x-order": 2,
                          "description": "Specifies the version of the schema to which the component definition conforms.",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "schemaVersion",
                            "json": "schemaVersion"
                          },
                          "default": "components.meshery.io/v1beta3",
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 100,
                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                          "example": [
                            "v1",
                            "v1alpha1",
                            "v2beta3",
                            "v1.custom-suffix",
                            "models.meshery.io/v1beta1",
                            "capability.meshery.io/v1alpha1"
                          ]
                        },
                        "version": {
                          "x-order": 3,
                          "description": "Version of the component definition.",
                          "minLength": 1,
                          "maxLength": 50,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "version",
                            "json": "version"
                          },
                          "type": "string",
                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                        },
                        "displayName": {
                          "x-order": 4,
                          "description": "Name of the component in human-readable format.",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "displayName",
                            "json": "displayName"
                          },
                          "type": "string",
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                        },
                        "description": {
                          "x-order": 5,
                          "type": "string",
                          "description": "A written representation of the purpose and characteristics of the component.",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "description",
                            "json": "description"
                          },
                          "maxLength": 5000
                        },
                        "format": {
                          "x-order": 6,
                          "type": "string",
                          "enum": [
                            "JSON",
                            "CUE"
                          ],
                          "default": "JSON",
                          "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "format",
                            "json": "format"
                          }
                        },
                        "model": {
                          "x-go-type": "*modelv1beta1.ModelDefinition",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta1/model",
                            "name": "modelv1beta1"
                          },
                          "x-order": 7,
                          "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",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "foreignKey:ModelID;references:ID",
                            "json": "model",
                            "yaml": "model"
                          },
                          "$id": "https://schemas.meshery.io/model.yaml",
                          "$schema": "http://json-schema.org/draft-07/schema#",
                          "additionalProperties": false,
                          "type": "object",
                          "properties": {
                            "id": {
                              "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                              "x-order": 1,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "id",
                                "json": "id"
                              },
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "schemaVersion": {
                              "description": "Specifies the version of the schema used for the definition.",
                              "x-order": 2,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "schemaVersion",
                                "json": "schemaVersion"
                              },
                              "default": "models.meshery.io/v1beta1",
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 100,
                              "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                              "example": [
                                "v1",
                                "v1alpha1",
                                "v2beta3",
                                "v1.custom-suffix",
                                "models.meshery.io/v1beta1",
                                "capability.meshery.io/v1alpha1"
                              ]
                            },
                            "version": {
                              "description": "Version of the model definition.",
                              "type": "string",
                              "x-order": 3,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "version",
                                "json": "version"
                              },
                              "minLength": 5,
                              "maxLength": 100,
                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                            },
                            "name": {
                              "type": "string",
                              "description": "The unique name for the model within the scope of a registrant.",
                              "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                              "pattern": "^[a-z0-9-]+$",
                              "examples": [
                                "cert-manager"
                              ],
                              "x-order": 4,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "name",
                                "json": "name"
                              },
                              "default": "untitled-model"
                            },
                            "displayName": {
                              "description": "Human-readable name for the model.",
                              "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                              "minLength": 1,
                              "maxLength": 100,
                              "type": "string",
                              "pattern": "^[a-zA-Z0-9 ]+$",
                              "examples": [
                                "Cert Manager"
                              ],
                              "x-order": 5,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "displayName",
                                "json": "displayName"
                              },
                              "default": "Untitled Model"
                            },
                            "description": {
                              "type": "string",
                              "default": "A new Meshery model.",
                              "description": "Description of the model.",
                              "minLength": 1,
                              "maxLength": 1000,
                              "x-order": 6,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "description,omitempty",
                                "json": "description,omitempty"
                              }
                            },
                            "status": {
                              "type": "string",
                              "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                              "enum": [
                                "ignored",
                                "enabled",
                                "duplicate"
                              ],
                              "x-order": 7,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "status",
                                "json": "status"
                              },
                              "default": "enabled"
                            },
                            "registrant": {
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "registrant",
                                "json": "registrant",
                                "gorm": "foreignKey:RegistrantId;references:ID"
                              },
                              "x-order": 8,
                              "x-go-type": "connectionv1beta1.Connection",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/v1beta1/connection",
                                "name": "connectionv1beta1"
                              },
                              "$id": "https://schemas.meshery.io/connection.yaml",
                              "$schema": "http://json-schema.org/draft-07/schema#",
                              "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",
                              "additionalProperties": false,
                              "type": "object",
                              "required": [
                                "id",
                                "schemaVersion",
                                "name",
                                "type",
                                "subType",
                                "kind",
                                "status"
                              ],
                              "properties": {
                                "id": {
                                  "description": "Connection ID",
                                  "x-order": 1,
                                  "x-go-name": "ID",
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "id",
                                    "yaml": "id"
                                  },
                                  "type": "string",
                                  "format": "uuid",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "name": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "name",
                                    "yaml": "name"
                                  },
                                  "x-order": 2,
                                  "type": "string",
                                  "description": "Connection Name"
                                },
                                "credentialId": {
                                  "x-go-name": "CredentialID",
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "credential_id",
                                    "yaml": "credentialId"
                                  },
                                  "x-order": 3,
                                  "description": "Associated Credential ID",
                                  "type": "string",
                                  "format": "uuid",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "type": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "type",
                                    "yaml": "type"
                                  },
                                  "x-order": 4,
                                  "type": "string",
                                  "description": "Connection Type (platform, telemetry, collaboration)"
                                },
                                "subType": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "sub_type",
                                    "yaml": "subType"
                                  },
                                  "x-order": 5,
                                  "type": "string",
                                  "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                                },
                                "kind": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "kind",
                                    "yaml": "kind"
                                  },
                                  "x-order": 6,
                                  "type": "string",
                                  "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                                },
                                "metadata": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "metadata",
                                    "yaml": "metadata"
                                  },
                                  "x-order": 7,
                                  "x-go-type": "core.Map",
                                  "x-go-type-import": {
                                    "path": "github.com/meshery/schemas/models/core"
                                  },
                                  "x-go-type-skip-optional-pointer": true,
                                  "type": "object",
                                  "description": "Additional connection metadata"
                                },
                                "status": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "status",
                                    "yaml": "status"
                                  },
                                  "x-order": 8,
                                  "description": "Connection Status",
                                  "type": "string",
                                  "enum": [
                                    "discovered",
                                    "registered",
                                    "connected",
                                    "ignored",
                                    "maintenance",
                                    "disconnected",
                                    "deleted",
                                    "not found"
                                  ]
                                },
                                "user_id": {
                                  "x-go-name": "UserID",
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "owner",
                                    "yaml": "user_id"
                                  },
                                  "x-order": 9,
                                  "description": "User ID who owns this connection",
                                  "type": "string",
                                  "format": "uuid",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "created_at": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "created_at",
                                    "yaml": "created_at"
                                  },
                                  "x-order": 10,
                                  "type": "string",
                                  "format": "date-time",
                                  "x-go-type-skip-optional-pointer": true
                                },
                                "updated_at": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "updated_at",
                                    "yaml": "updated_at"
                                  },
                                  "x-order": 11,
                                  "type": "string",
                                  "format": "date-time",
                                  "x-go-type-skip-optional-pointer": true
                                },
                                "deleted_at": {
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "deleted_at",
                                    "yaml": "deleted_at"
                                  },
                                  "x-order": 12,
                                  "description": "SQL null Timestamp to handle null values of time.",
                                  "x-go-type": "meshcore.NullTime",
                                  "x-go-type-import": {
                                    "name": "meshcore",
                                    "path": "github.com/meshery/schemas/models/core"
                                  },
                                  "type": "string",
                                  "format": "date-time",
                                  "x-go-type-skip-optional-pointer": true
                                },
                                "environments": {
                                  "type": "array",
                                  "description": "Associated environments for this connection",
                                  "items": {
                                    "x-go-type": "*environmentv1beta1.Environment",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1beta1/environment",
                                      "name": "environmentv1beta1"
                                    },
                                    "$id": "https://schemas.meshery.io/environment.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "title": "Environment",
                                    "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "example": {
                                      "id": "00000000-0000-0000-0000-000000000000",
                                      "schemaVersion": "environments.meshery.io/v1beta1",
                                      "name": "Production Environment",
                                      "description": "Connections and credentials for the production cluster.",
                                      "organization_id": "00000000-0000-0000-0000-000000000000",
                                      "owner": "00000000-0000-0000-0000-000000000000",
                                      "created_at": "0001-01-01T00:00:00Z",
                                      "metadata": {},
                                      "updated_at": "0001-01-01T00:00:00Z",
                                      "deleted_at": null
                                    },
                                    "required": [
                                      "id",
                                      "schemaVersion",
                                      "name",
                                      "description",
                                      "organization_id"
                                    ],
                                    "properties": {
                                      "id": {
                                        "description": "ID",
                                        "x-order": 1,
                                        "x-go-name": "ID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "id",
                                          "yaml": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema to which the environment conforms.",
                                        "x-order": 2,
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "schemaVersion",
                                          "db": "-",
                                          "gorm": "-"
                                        },
                                        "default": "environments.meshery.io/v1beta1",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "name": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "name",
                                          "yaml": "name"
                                        },
                                        "x-order": 3,
                                        "type": "string",
                                        "maxLength": 100,
                                        "description": "Environment name"
                                      },
                                      "description": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "description",
                                          "yaml": "description"
                                        },
                                        "x-order": 4,
                                        "type": "string",
                                        "maxLength": 1000,
                                        "description": "Environment description"
                                      },
                                      "organization_id": {
                                        "x-go-name": "OrganizationID",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "organization_id",
                                          "yaml": "organization_id"
                                        },
                                        "x-order": 5,
                                        "description": "Environment organization ID",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "owner": {
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "owner",
                                          "yaml": "owner"
                                        },
                                        "x-order": 6,
                                        "description": "Environment owner",
                                        "type": "string",
                                        "format": "uuid",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "created_at": {
                                        "x-order": 7,
                                        "description": "Timestamp when the resource was created.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "CreatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "created_at",
                                          "yaml": "created_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "metadata": {
                                        "description": "Additional metadata associated with the environment.",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "metadata",
                                          "yaml": "metadata"
                                        },
                                        "x-order": 8,
                                        "x-go-type": "core.Map",
                                        "x-go-type-skip-optional-pointer": true,
                                        "type": "object"
                                      },
                                      "updated_at": {
                                        "x-order": 9,
                                        "description": "Timestamp when the resource was updated.",
                                        "x-go-type": "time.Time",
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-name": "UpdatedAt",
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "updated_at",
                                          "yaml": "updated_at"
                                        },
                                        "x-go-type-skip-optional-pointer": true
                                      },
                                      "deleted_at": {
                                        "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                        "nullable": true,
                                        "x-oapi-codegen-extra-tags": {
                                          "db": "deleted_at",
                                          "yaml": "deleted_at"
                                        },
                                        "x-go-type": "core.NullTime",
                                        "x-go-import": "database/sql",
                                        "x-order": 10,
                                        "x-go-type-import": {
                                          "name": "meshcore",
                                          "path": "github.com/meshery/schemas/models/core"
                                        },
                                        "type": "string",
                                        "format": "date-time",
                                        "x-go-type-skip-optional-pointer": true
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "db": "-",
                                    "yaml": "environments",
                                    "gorm": "-"
                                  },
                                  "x-go-type-skip-optional-pointer": true,
                                  "x-order": 13
                                },
                                "schemaVersion": {
                                  "description": "Specifies the version of the schema used for the definition.",
                                  "x-order": 14,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "schemaVersion",
                                    "db": "-",
                                    "gorm": "-"
                                  },
                                  "default": "connections.meshery.io/v1beta1",
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 100,
                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                  "example": [
                                    "v1",
                                    "v1alpha1",
                                    "v2beta3",
                                    "v1.custom-suffix",
                                    "models.meshery.io/v1beta1",
                                    "capability.meshery.io/v1alpha1"
                                  ]
                                }
                              }
                            },
                            "registrantId": {
                              "description": "ID of the registrant.",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "connection_id",
                                "json": "connection_id",
                                "gorm": "column:connection_id"
                              },
                              "x-order": 8,
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "categoryId": {
                              "description": "ID of the category.",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "-",
                                "json": "-",
                                "gorm": "categoryID"
                              },
                              "x-order": 8,
                              "type": "string",
                              "format": "uuid",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "category": {
                              "x-order": 9,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "category",
                                "json": "category",
                                "gorm": "foreignKey:CategoryId;references:ID"
                              },
                              "x-go-type": "categoryv1beta1.CategoryDefinition",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/v1beta1/category",
                                "name": "categoryv1beta1"
                              },
                              "$id": "https://schemas.meshery.io/category.yaml",
                              "$schema": "http://json-schema.org/draft-07/schema#",
                              "type": "object",
                              "additionalProperties": false,
                              "description": "Category of the model.",
                              "required": [
                                "id",
                                "name",
                                "metadata"
                              ],
                              "properties": {
                                "id": {
                                  "x-order": 1,
                                  "type": "string",
                                  "format": "uuid",
                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "name": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "name",
                                    "json": "name",
                                    "gorm": "name"
                                  },
                                  "default": "Uncategorized",
                                  "description": "The category of the model that determines the main grouping.",
                                  "helperText": "Select a model category",
                                  "enum": [
                                    "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"
                                  ],
                                  "x-order": 2
                                },
                                "metadata": {
                                  "description": "Additional metadata associated with the category.",
                                  "type": "object",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "metadata,omitempty",
                                    "json": "metadata,omitempty",
                                    "gorm": "type:bytes;serializer:json"
                                  },
                                  "x-order": 3
                                }
                              }
                            },
                            "subCategory": {
                              "x-order": 10,
                              "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                                "name": "subcategoryv1beta1"
                              },
                              "$id": "https://schemas.meshery.io/category.yaml",
                              "$schema": "http://json-schema.org/draft-07/schema#",
                              "type": "string",
                              "title": "SubCategory",
                              "description": "Sub category of the model determines the secondary grouping.",
                              "default": "Uncategorized",
                              "enum": [
                                "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"
                              ],
                              "minLength": 1,
                              "maxLength": 100,
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "subCategory",
                                "json": "subCategory"
                              }
                            },
                            "metadata": {
                              "type": "object",
                              "description": "Metadata containing additional information associated with the model.",
                              "required": [
                                "svgWhite",
                                "svgColor"
                              ],
                              "properties": {
                                "capabilities": {
                                  "type": "array",
                                  "description": "Capabilities associated with the model",
                                  "items": {
                                    "x-go-type": "capabilityv1alpha1.Capability",
                                    "x-go-type-import": {
                                      "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                      "name": "capabilityv1alpha1"
                                    },
                                    "$id": "https://schemas.meshery.io/capability.yaml",
                                    "$schema": "http://json-schema.org/draft-07/schema#",
                                    "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                                    "additionalProperties": false,
                                    "type": "object",
                                    "required": [
                                      "description",
                                      "schemaVersion",
                                      "version",
                                      "displayName",
                                      "kind",
                                      "type",
                                      "subType",
                                      "entityState",
                                      "key",
                                      "status"
                                    ],
                                    "x-oapi-codegen-extra-tags": {
                                      "gorm": "type:bytes;serializer:json"
                                    },
                                    "properties": {
                                      "schemaVersion": {
                                        "description": "Specifies the version of the schema to which the capability definition conforms.",
                                        "type": "string",
                                        "minLength": 2,
                                        "maxLength": 100,
                                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                        "example": [
                                          "v1",
                                          "v1alpha1",
                                          "v2beta3",
                                          "v1.custom-suffix",
                                          "models.meshery.io/v1beta1",
                                          "capability.meshery.io/v1alpha1"
                                        ]
                                      },
                                      "version": {
                                        "description": "Version of the capability definition.",
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 100,
                                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                      },
                                      "displayName": {
                                        "description": "Name of the capability in human-readible format.",
                                        "type": "string",
                                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                      },
                                      "description": {
                                        "type": "string",
                                        "description": "A written representation of the purpose and characteristics of the capability.",
                                        "maxLength": 5000
                                      },
                                      "kind": {
                                        "description": "Top-level categorization of the capability",
                                        "additionalProperties": false,
                                        "anyOf": [
                                          {
                                            "const": "action",
                                            "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                          },
                                          {
                                            "const": "mutate",
                                            "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                          },
                                          {
                                            "const": "view",
                                            "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                          },
                                          {
                                            "const": "interaction",
                                            "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                          }
                                        ],
                                        "type": "string",
                                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                      },
                                      "type": {
                                        "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                        "type": "string",
                                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                      },
                                      "subType": {
                                        "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                        "type": "string",
                                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                      },
                                      "key": {
                                        "description": "Key that backs the capability.",
                                        "type": "string",
                                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                      },
                                      "entityState": {
                                        "description": "State of the entity in which the capability is applicable.",
                                        "type": "array",
                                        "items": {
                                          "type": "string",
                                          "enum": [
                                            "declaration",
                                            "instance"
                                          ],
                                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                          "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                        }
                                      },
                                      "status": {
                                        "type": "string",
                                        "description": "Status of the capability",
                                        "default": "enabled",
                                        "enum": [
                                          "enabled",
                                          "disabled"
                                        ]
                                      },
                                      "metadata": {
                                        "type": "object",
                                        "description": "Metadata contains additional information associated with the capability. Extension point.",
                                        "additionalProperties": true
                                      }
                                    },
                                    "default": [
                                      {
                                        "description": "Configure the visual styles for the component",
                                        "displayName": "Styling",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "key": "",
                                        "kind": "mutate",
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "status": "enabled",
                                        "subType": "",
                                        "type": "style",
                                        "version": "0.7.0"
                                      },
                                      {
                                        "description": "Change the shape of the component",
                                        "displayName": "Change Shape",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "key": "",
                                        "kind": "mutate",
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "status": "enabled",
                                        "subType": "shape",
                                        "type": "style",
                                        "version": "0.7.0"
                                      },
                                      {
                                        "description": "Drag and Drop a component into a parent component in graph view",
                                        "displayName": "Compound Drag And Drop",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "key": "",
                                        "kind": "interaction",
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "status": "enabled",
                                        "subType": "compoundDnd",
                                        "type": "graph",
                                        "version": "0.7.0"
                                      },
                                      {
                                        "description": "Add text to nodes body",
                                        "displayName": "Body Text",
                                        "entityState": [
                                          "declaration"
                                        ],
                                        "key": "",
                                        "kind": "mutate",
                                        "schemaVersion": "capability.meshery.io/v1beta1",
                                        "status": "enabled",
                                        "subType": "body-text",
                                        "type": "style",
                                        "version": "0.7.0"
                                      }
                                    ]
                                  },
                                  "x-order": 1
                                },
                                "isAnnotation": {
                                  "type": "boolean",
                                  "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "isAnnotation",
                                    "json": "isAnnotation"
                                  },
                                  "x-order": 2,
                                  "default": false
                                },
                                "primaryColor": {
                                  "type": "string",
                                  "description": "Primary color associated with the model.",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "default": "#00b39f",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "primaryColor",
                                    "json": "primaryColor"
                                  },
                                  "x-order": 3
                                },
                                "secondaryColor": {
                                  "type": "string",
                                  "description": "Secondary color associated with the model.",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "default": "#00D3A9",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "secondaryColor",
                                    "json": "secondaryColor"
                                  },
                                  "x-order": 4
                                },
                                "svgWhite": {
                                  "type": "string",
                                  "description": "SVG representation of the model in white color.",
                                  "minLength": 1,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "svgWhite",
                                    "json": "svgWhite"
                                  },
                                  "x-order": 5,
                                  "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>"
                                },
                                "svgColor": {
                                  "type": "string",
                                  "description": "SVG representation of the model in colored format.",
                                  "minLength": 1,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "svgColor",
                                    "json": "svgColor"
                                  },
                                  "x-order": 6,
                                  "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>"
                                },
                                "svgComplete": {
                                  "type": "string",
                                  "description": "SVG representation of the complete model.",
                                  "minLength": 1,
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "svgComplete",
                                    "json": "svgComplete"
                                  },
                                  "x-order": 7
                                },
                                "shape": {
                                  "x-order": 8,
                                  "type": "string",
                                  "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)",
                                  "enum": [
                                    "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"
                                  ]
                                }
                              },
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json",
                                "json": "metadata",
                                "yaml": "metadata"
                              },
                              "x-order": 11,
                              "additionalProperties": true
                            },
                            "model": {
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json"
                              },
                              "x-order": 12,
                              "type": "object",
                              "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                              "required": [
                                "version"
                              ],
                              "properties": {
                                "version": {
                                  "description": "Version of the model as defined by the registrant.",
                                  "x-oapi-codegen-extra-tags": {
                                    "json": "version"
                                  },
                                  "x-order": 1,
                                  "type": "string",
                                  "minLength": 5,
                                  "maxLength": 100,
                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                }
                              }
                            },
                            "relationships": {
                              "type": "array",
                              "x-go-type": "interface{}",
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "-",
                                "json": "relationships",
                                "yaml": "relationships"
                              },
                              "description": "The relationships of the model."
                            },
                            "components": {
                              "type": "array",
                              "x-go-type": "interface{}",
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "-",
                                "json": "components",
                                "yaml": "components"
                              },
                              "description": "The components of the model."
                            },
                            "componentsCount": {
                              "type": "integer",
                              "description": "Number of components associated with the model.",
                              "x-order": 13,
                              "x-oapi-codegen-extra-tags": {
                                "json": "components_count",
                                "yaml": "components_count",
                                "gorm": "-"
                              },
                              "default": 0,
                              "minimum": 0
                            },
                            "relationshipsCount": {
                              "type": "integer",
                              "description": "Number of relationships associated with the model.",
                              "x-order": 13,
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "-",
                                "json": "relationships_count",
                                "yaml": "relationships_count"
                              },
                              "default": 0,
                              "minimum": 0
                            },
                            "created_at": {
                              "x-order": 14,
                              "description": "Timestamp when the resource was created.",
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "CreatedAt",
                              "x-oapi-codegen-extra-tags": {
                                "db": "created_at",
                                "yaml": "created_at"
                              },
                              "x-go-type-skip-optional-pointer": true
                            },
                            "updated_at": {
                              "x-order": 15,
                              "description": "Timestamp when the resource was updated.",
                              "x-go-type": "time.Time",
                              "type": "string",
                              "format": "date-time",
                              "x-go-name": "UpdatedAt",
                              "x-oapi-codegen-extra-tags": {
                                "db": "updated_at",
                                "yaml": "updated_at"
                              },
                              "x-go-type-skip-optional-pointer": true
                            }
                          },
                          "required": [
                            "id",
                            "schemaVersion",
                            "displayName",
                            "status",
                            "subCategory",
                            "model",
                            "name",
                            "description",
                            "version",
                            "registrant",
                            "category",
                            "categoryId",
                            "registrantId",
                            "relationshipsCount",
                            "componentsCount",
                            "components",
                            "relationships"
                          ]
                        },
                        "modelReference": {
                          "x-go-type": "modelv1beta1.ModelReference",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/v1beta1/model",
                            "name": "modelv1beta1"
                          },
                          "x-order": 8,
                          "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",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "-"
                          },
                          "x-generate-db-helpers": true,
                          "type": "object",
                          "required": [
                            "id",
                            "name",
                            "version",
                            "displayName",
                            "model",
                            "registrant"
                          ],
                          "properties": {
                            "id": {
                              "type": "string",
                              "format": "uuid",
                              "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                              "x-go-type": "uuid.UUID",
                              "x-go-type-import": {
                                "path": "github.com/gofrs/uuid"
                              }
                            },
                            "name": {
                              "type": "string",
                              "description": "The unique name for the model within the scope of a registrant.",
                              "pattern": "^[a-z0-9-]+$",
                              "examples": [
                                "cert-manager"
                              ]
                            },
                            "version": {
                              "description": "Version of the model definition.",
                              "type": "string",
                              "minLength": 5,
                              "maxLength": 100,
                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                            },
                            "displayName": {
                              "type": "string",
                              "description": "Human-readable name for the model.",
                              "minLength": 1,
                              "maxLength": 100,
                              "pattern": "^[a-zA-Z0-9 ]+$",
                              "examples": [
                                "Cert Manager"
                              ]
                            },
                            "model": {
                              "type": "object",
                              "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                              "required": [
                                "version"
                              ],
                              "properties": {
                                "version": {
                                  "description": "Version of the model as defined by the registrant.",
                                  "x-oapi-codegen-extra-tags": {
                                    "json": "version"
                                  },
                                  "x-order": 1,
                                  "type": "string",
                                  "minLength": 5,
                                  "maxLength": 100,
                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                }
                              }
                            },
                            "registrant": {
                              "x-go-type": "RegistrantReference",
                              "x-oapi-codegen-extra-tags": {
                                "json": "registrant"
                              },
                              "type": "object",
                              "required": [
                                "kind"
                              ],
                              "properties": {
                                "kind": {
                                  "type": "string",
                                  "description": "Kind of the registrant.",
                                  "maxLength": 255
                                }
                              }
                            }
                          }
                        },
                        "modelId": {
                          "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.",
                          "x-go-name": "ModelID",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                            "db": "model_id",
                            "yaml": "-",
                            "json": "-"
                          },
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "styles": {
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json",
                            "yaml": "styles",
                            "json": "styles"
                          },
                          "x-go-type": "core.ComponentStyles",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/core",
                            "name": "core"
                          },
                          "x-order": 8,
                          "type": "object",
                          "description": "Visualization styles for a component",
                          "required": [
                            "shape",
                            "primaryColor",
                            "svgColor",
                            "svgWhite",
                            "svgComplete"
                          ],
                          "allOf": [
                            {
                              "type": "object",
                              "description": "Common styles for all entities",
                              "additionalProperties": true,
                              "required": [
                                "primaryColor",
                                "svgColor",
                                "svgWhite",
                                "svgComplete"
                              ],
                              "properties": {
                                "primaryColor": {
                                  "type": "string",
                                  "description": "Primary color of the component used for UI representation.",
                                  "maxLength": 500
                                },
                                "secondaryColor": {
                                  "type": "string",
                                  "description": "Secondary color of the entity used for UI representation.",
                                  "maxLength": 500
                                },
                                "svgWhite": {
                                  "type": "string",
                                  "description": "White SVG of the entity used for UI representation on dark background.",
                                  "maxLength": 500
                                },
                                "svgColor": {
                                  "type": "string",
                                  "description": "Colored SVG of the entity used for UI representation on light background.",
                                  "maxLength": 500
                                },
                                "svgComplete": {
                                  "type": "string",
                                  "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                  "maxLength": 500
                                },
                                "color": {
                                  "type": "string",
                                  "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 500
                                },
                                "textOpacity": {
                                  "type": "number",
                                  "description": "The opacity of the label text, including its outline.",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "fontFamily": {
                                  "type": "string",
                                  "description": "A comma-separated list of font names to use on the label text.",
                                  "maxLength": 500
                                },
                                "fontSize": {
                                  "type": "string",
                                  "description": "The size of the label text.",
                                  "maxLength": 500
                                },
                                "fontStyle": {
                                  "type": "string",
                                  "description": "A CSS font style to be applied to the label text.",
                                  "maxLength": 500
                                },
                                "fontWeight": {
                                  "type": "string",
                                  "description": "A CSS font weight to be applied to the label text.",
                                  "maxLength": 500
                                },
                                "textTransform": {
                                  "type": "string",
                                  "description": "A transformation to apply to the label text",
                                  "enum": [
                                    "none",
                                    "uppercase",
                                    "lowercase"
                                  ]
                                },
                                "opacity": {
                                  "type": "number",
                                  "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.",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "zIndex": {
                                  "type": "integer",
                                  "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.",
                                  "minimum": 0
                                },
                                "label": {
                                  "type": "string",
                                  "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                  "maxLength": 500
                                },
                                "animation": {
                                  "type": "object",
                                  "description": "The animation to apply to the element. example ripple,bounce,etc"
                                }
                              }
                            },
                            {
                              "type": "object",
                              "properties": {
                                "shape": {
                                  "type": "string",
                                  "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)",
                                  "enum": [
                                    "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"
                                  ]
                                },
                                "position": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "x",
                                    "y"
                                  ],
                                  "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.",
                                  "properties": {
                                    "x": {
                                      "type": "number",
                                      "description": "The x-coordinate of the node.",
                                      "minimum": -1000000,
                                      "maximum": 1000000,
                                      "x-go-type": "float64"
                                    },
                                    "y": {
                                      "type": "number",
                                      "description": "The y-coordinate of the node.",
                                      "minimum": -1000000,
                                      "maximum": 1000000,
                                      "x-go-type": "float64"
                                    }
                                  }
                                },
                                "bodyText": {
                                  "type": "string",
                                  "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                                  "maxLength": 500
                                },
                                "bodyTextWrap": {
                                  "type": "string",
                                  "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                                  "enum": [
                                    "none",
                                    "wrap",
                                    "ellipsis"
                                  ]
                                },
                                "bodyTextMaxWidth": {
                                  "type": "string",
                                  "description": "The maximum width for wrapping text in the node.",
                                  "maxLength": 50
                                },
                                "bodyTextOpacity": {
                                  "type": "number",
                                  "description": "The opacity of the node's body text, including its outline.",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "bodyTextBackgroundColor": {
                                  "type": "string",
                                  "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 100
                                },
                                "bodyTextFontSize": {
                                  "type": "number",
                                  "description": "The size of the node's body text.",
                                  "minimum": 0
                                },
                                "bodyTextColor": {
                                  "type": "string",
                                  "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 100
                                },
                                "bodyTextFontWeight": {
                                  "type": "string",
                                  "description": "A CSS font weight to be applied to the node's body text.",
                                  "maxLength": 50
                                },
                                "bodyTextHorizontalAlign": {
                                  "type": "string",
                                  "description": "A CSS horizontal alignment to be applied to the node's body text.",
                                  "maxLength": 50
                                },
                                "bodyTextDecoration": {
                                  "type": "string",
                                  "description": "A CSS text decoration to be applied to the node's body text.",
                                  "maxLength": 100
                                },
                                "bodyTextVerticalAlign": {
                                  "type": "string",
                                  "description": "A CSS vertical alignment to be applied to the node's body text.",
                                  "maxLength": 50
                                },
                                "width": {
                                  "type": "number",
                                  "description": "The width of the node's body or the width of an edge's line.",
                                  "minimum": 0
                                },
                                "height": {
                                  "type": "number",
                                  "description": "The height of the node's body",
                                  "minimum": 0
                                },
                                "backgroundImage": {
                                  "type": "string",
                                  "format": "uri",
                                  "description": "The URL that points to the image to show in the node.",
                                  "maxLength": 2048
                                },
                                "backgroundColor": {
                                  "type": "string",
                                  "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 100
                                },
                                "backgroundBlacken": {
                                  "type": "number",
                                  "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                                  "maximum": 1,
                                  "minimum": -1
                                },
                                "backgroundOpacity": {
                                  "type": "number",
                                  "description": "The opacity level of the node's background colour",
                                  "maximum": 1,
                                  "minimum": 0
                                },
                                "backgroundPositionX": {
                                  "type": "string",
                                  "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                  "maxLength": 50
                                },
                                "backgroundPositionY": {
                                  "type": "string",
                                  "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                  "maxLength": 50
                                },
                                "backgroundOffsetX": {
                                  "type": "string",
                                  "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                  "maxLength": 50
                                },
                                "backgroundOffsetY": {
                                  "type": "string",
                                  "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                                  "maxLength": 50
                                },
                                "backgroundFit": {
                                  "type": "string",
                                  "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                                  "enum": [
                                    "none",
                                    "contain",
                                    "cover"
                                  ]
                                },
                                "backgroundClip": {
                                  "type": "string",
                                  "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                                  "enum": [
                                    "none",
                                    "node",
                                    "node-border"
                                  ]
                                },
                                "backgroundWidthRelativeTo": {
                                  "type": "string",
                                  "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                                  "enum": [
                                    "none",
                                    "inner",
                                    "outer"
                                  ]
                                },
                                "backgroundHeightRelativeTo": {
                                  "type": "string",
                                  "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                                  "enum": [
                                    "none",
                                    "inner",
                                    "outer"
                                  ]
                                },
                                "borderWidth": {
                                  "type": "number",
                                  "description": "The size of the node's border.",
                                  "minimum": 0
                                },
                                "borderStyle": {
                                  "type": "string",
                                  "description": "The style of the node's border",
                                  "enum": [
                                    "solid",
                                    "dotted",
                                    "dashed",
                                    "double"
                                  ]
                                },
                                "borderColor": {
                                  "type": "string",
                                  "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 100
                                },
                                "borderOpacity": {
                                  "type": "number",
                                  "description": "The opacity of the node's border",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "padding": {
                                  "type": "number",
                                  "description": "The amount of padding around all sides of the node.",
                                  "minimum": 0
                                },
                                "textHalign": {
                                  "type": "string",
                                  "description": "The horizontal alignment of a node's label",
                                  "enum": [
                                    "left",
                                    "center",
                                    "right"
                                  ]
                                },
                                "textValign": {
                                  "type": "string",
                                  "description": "The vertical alignment of a node's label",
                                  "enum": [
                                    "top",
                                    "center",
                                    "bottom"
                                  ]
                                },
                                "ghost": {
                                  "type": "string",
                                  "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                                  "default": "no",
                                  "enum": [
                                    "yes",
                                    "no"
                                  ]
                                },
                                "activeBgColor": {
                                  "type": "string",
                                  "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.",
                                  "maxLength": 100
                                },
                                "activeBgOpacity": {
                                  "type": "string",
                                  "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                  "maxLength": 50
                                },
                                "activeBgSize": {
                                  "type": "string",
                                  "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                                  "maxLength": 50
                                },
                                "selectionBoxColor": {
                                  "type": "string",
                                  "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.",
                                  "maxLength": 100
                                },
                                "selectionBoxBorderWidth": {
                                  "type": "number",
                                  "description": "The size of the border on the selection box. Selector needs to be *core*",
                                  "minimum": 0
                                },
                                "selectionBoxOpacity": {
                                  "type": "number",
                                  "description": "The opacity of the selection box. Selector needs to be *core*",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "outsideTextureBgColor": {
                                  "type": "string",
                                  "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.",
                                  "maxLength": 100
                                },
                                "outsideTextureBgOpacity": {
                                  "type": "number",
                                  "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "shapePolygonPoints": {
                                  "type": "string",
                                  "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 )",
                                  "maxLength": 2000
                                },
                                "menuBackgroundColor": {
                                  "type": "string",
                                  "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 100
                                },
                                "menuBackgroundOpacity": {
                                  "type": "number",
                                  "description": "The opacity of the background of the component menu.",
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "menuForgroundColor": {
                                  "type": "string",
                                  "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                                  "maxLength": 100
                                }
                              }
                            }
                          ]
                        },
                        "capabilities": {
                          "x-order": 9,
                          "type": "array",
                          "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.",
                          "items": {
                            "x-go-type": "capabilityv1beta1.Capability",
                            "x-go-type-import": {
                              "path": "github.com/meshery/schemas/models/v1beta1/capability",
                              "name": "capabilityv1beta1"
                            },
                            "$id": "https://schemas.meshery.io/capability.yaml",
                            "$schema": "http://json-schema.org/draft-07/schema#",
                            "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                            "additionalProperties": false,
                            "type": "object",
                            "required": [
                              "description",
                              "schemaVersion",
                              "version",
                              "displayName",
                              "kind",
                              "type",
                              "subType",
                              "entityState",
                              "key",
                              "status"
                            ],
                            "x-oapi-codegen-extra-tags": {
                              "gorm": "type:bytes;serializer:json"
                            },
                            "properties": {
                              "schemaVersion": {
                                "description": "Specifies the version of the schema to which the capability definition conforms.",
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 100,
                                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                "example": [
                                  "v1",
                                  "v1alpha1",
                                  "v2beta3",
                                  "v1.custom-suffix",
                                  "models.meshery.io/v1beta1",
                                  "capability.meshery.io/v1alpha1"
                                ]
                              },
                              "version": {
                                "description": "Version of the capability definition.",
                                "type": "string",
                                "minLength": 5,
                                "maxLength": 100,
                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                              },
                              "displayName": {
                                "description": "Name of the capability in human-readible format.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "description": {
                                "type": "string",
                                "description": "A written representation of the purpose and characteristics of the capability.",
                                "maxLength": 5000
                              },
                              "kind": {
                                "description": "Top-level categorization of the capability",
                                "additionalProperties": false,
                                "anyOf": [
                                  {
                                    "const": "action",
                                    "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                  },
                                  {
                                    "const": "mutate",
                                    "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                  },
                                  {
                                    "const": "view",
                                    "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                  },
                                  {
                                    "const": "interaction",
                                    "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                  }
                                ],
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "type": {
                                "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "subType": {
                                "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "key": {
                                "description": "Key that backs the capability.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "entityState": {
                                "description": "State of the entity in which the capability is applicable.",
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "declaration",
                                    "instance"
                                  ],
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                  "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                }
                              },
                              "status": {
                                "type": "string",
                                "description": "Status of the capability",
                                "default": "enabled",
                                "enum": [
                                  "enabled",
                                  "disabled"
                                ]
                              },
                              "metadata": {
                                "type": "object",
                                "description": "Metadata contains additional information associated with the capability. Extension point.",
                                "additionalProperties": true
                              }
                            },
                            "default": [
                              {
                                "description": "Configure the visual styles for the component",
                                "displayName": "Styling",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "mutate",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "",
                                "type": "style",
                                "version": "0.7.0"
                              },
                              {
                                "description": "Change the shape of the component",
                                "displayName": "Change Shape",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "mutate",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "shape",
                                "type": "style",
                                "version": "0.7.0"
                              },
                              {
                                "description": "Drag and Drop a component into a parent component in graph view",
                                "displayName": "Compound Drag And Drop",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "interaction",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "compoundDnd",
                                "type": "graph",
                                "version": "0.7.0"
                              },
                              {
                                "description": "Add text to nodes body",
                                "displayName": "Body Text",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "mutate",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "body-text",
                                "type": "style",
                                "version": "0.7.0"
                              }
                            ]
                          },
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json",
                            "yaml": "capabilities",
                            "json": "capabilities"
                          },
                          "default": [
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Performance Test",
                              "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                              "kind": "action",
                              "type": "operator",
                              "subType": "perf-test",
                              "key": "",
                              "entityState": [
                                "instance"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Workload Configuration",
                              "description": "Configure the workload specific setting of a component",
                              "kind": "mutate",
                              "type": "configuration",
                              "subType": "config",
                              "key": "",
                              "entityState": [
                                "declaration"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Labels and Annotations Configuration",
                              "description": "Configure Labels And Annotations for the component",
                              "kind": "mutate",
                              "type": "configuration",
                              "subType": "labels-and-annotations",
                              "key": "",
                              "entityState": [
                                "declaration"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Relationships",
                              "description": "View relationships for the component",
                              "kind": "view",
                              "type": "configuration",
                              "subType": "relationship",
                              "key": "",
                              "entityState": [
                                "declaration",
                                "instance"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Json Schema",
                              "description": "View Component Definition ",
                              "kind": "view",
                              "type": "configuration",
                              "subType": "definition",
                              "key": "",
                              "entityState": [
                                "declaration",
                                "instance"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Styling",
                              "description": "Configure the visual styles for the component",
                              "kind": "mutate",
                              "type": "style",
                              "subType": "",
                              "key": "",
                              "entityState": [
                                "declaration"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Change Shape",
                              "description": "Change the shape of the component",
                              "kind": "mutate",
                              "type": "style",
                              "subType": "shape",
                              "key": "",
                              "entityState": [
                                "declaration"
                              ],
                              "status": "enabled",
                              "metadata": null
                            },
                            {
                              "schemaVersion": "capability.meshery.io/v1beta1",
                              "version": "0.7.0",
                              "displayName": "Compound Drag And Drop",
                              "description": "Drag and Drop a component into a parent component in graph view",
                              "kind": "interaction",
                              "type": "graph",
                              "subType": "compoundDnd",
                              "key": "",
                              "entityState": [
                                "declaration"
                              ],
                              "status": "enabled",
                              "metadata": null
                            }
                          ]
                        },
                        "status": {
                          "x-order": 10,
                          "type": "string",
                          "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                          "default": "enabled",
                          "enum": [
                            "ignored",
                            "enabled",
                            "duplicate",
                            "resolved",
                            "open"
                          ],
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "status",
                            "json": "status"
                          }
                        },
                        "metadata": {
                          "x-order": 11,
                          "type": "object",
                          "description": "Metadata contains additional information associated with the component.",
                          "required": [
                            "genealogy",
                            "isAnnotation",
                            "isNamespaced",
                            "published",
                            "instanceDetails",
                            "configurationUISchema"
                          ],
                          "properties": {
                            "genealogy": {
                              "x-order": 1,
                              "type": "string",
                              "description": "Genealogy represents the various representational states of the component.",
                              "maxLength": 1000
                            },
                            "isAnnotation": {
                              "x-order": 2,
                              "type": "boolean",
                              "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.",
                              "default": false
                            },
                            "isNamespaced": {
                              "x-order": 3,
                              "type": "boolean",
                              "description": "Identifies whether the component is scoped to namespace or cluster wide."
                            },
                            "published": {
                              "x-order": 4,
                              "type": "boolean",
                              "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."
                            },
                            "instanceDetails": {
                              "x-order": 5,
                              "type": "object",
                              "description": "InstanceDetails contains information about the instance of the component."
                            },
                            "configurationUISchema": {
                              "x-order": 6,
                              "type": "string",
                              "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/ .",
                              "maxLength": 20000
                            }
                          },
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json"
                          },
                          "additionalProperties": true
                        },
                        "configuration": {
                          "x-order": 12,
                          "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                          "type": "object",
                          "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json"
                          }
                        },
                        "component": {
                          "x-order": 13,
                          "x-oapi-codegen-extra-tags": {
                            "gorm": "type:bytes;serializer:json"
                          },
                          "x-go-type": "Component",
                          "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                          "type": "object",
                          "properties": {
                            "version": {
                              "type": "string",
                              "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                              "x-order": 1,
                              "maxLength": 500
                            },
                            "kind": {
                              "type": "string",
                              "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                              "x-order": 2,
                              "maxLength": 255
                            },
                            "schema": {
                              "type": "string",
                              "description": "JSON schema of the object as defined by the registrant.",
                              "x-order": 3,
                              "maxLength": 500
                            }
                          },
                          "required": [
                            "version",
                            "kind",
                            "schema"
                          ]
                        },
                        "createdAt": {
                          "description": "Timestamp when the component was created.",
                          "x-oapi-codegen-extra-tags": {
                            "db": "created_at",
                            "yaml": "createdAt",
                            "json": "createdAt"
                          },
                          "x-order": 14,
                          "x-go-type": "time.Time",
                          "type": "string",
                          "format": "date-time",
                          "x-go-name": "CreatedAt",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "updatedAt": {
                          "description": "Timestamp when the component was last updated.",
                          "x-oapi-codegen-extra-tags": {
                            "db": "updated_at",
                            "yaml": "updatedAt",
                            "json": "updatedAt"
                          },
                          "x-order": 15,
                          "x-go-type": "time.Time",
                          "type": "string",
                          "format": "date-time",
                          "x-go-name": "UpdatedAt",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "deletedAt": {
                          "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                          "x-oapi-codegen-extra-tags": {
                            "db": "deleted_at",
                            "json": "deletedAt,omitempty",
                            "yaml": "deletedAt,omitempty"
                          },
                          "x-order": 16,
                          "x-go-type": "NullTime",
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        }
                      },
                      "required": [
                        "id",
                        "displayName",
                        "description",
                        "schemaVersion",
                        "format",
                        "version",
                        "configuration",
                        "metadata",
                        "model",
                        "modelReference",
                        "component",
                        "createdAt",
                        "updatedAt"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "duplicates": {
                          "type": "integer",
                          "description": "Number of other registered entries sharing this component's kind, version, and model.",
                          "minimum": 0
                        }
                      }
                    }
                  ]
                },
                "description": "The components matching the query."
              }
            }
          }
        ]
      },
      "RegistryRelationshipsPage": {
        "description": "A page of registered relationships.",
        "allOf": [
          {
            "type": "object",
            "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
            "properties": {
              "page": {
                "type": "integer",
                "description": "Current page number of the result set.",
                "minimum": 0
              },
              "pageSize": {
                "type": "integer",
                "description": "Number of items in the page.",
                "minimum": 0
              },
              "totalCount": {
                "type": "integer",
                "description": "Total number of items available.",
                "minimum": 0
              },
              "page_size": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `pageSize`.",
                "minimum": 0,
                "deprecated": true
              },
              "total_count": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `totalCount`.",
                "minimum": 0,
                "deprecated": true
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "relationships": {
                "type": "array",
                "items": {
                  "openapi": "3.0.0",
                  "info": {
                    "title": "Relationship Core Schema",
                    "description": "Core schema definitions for Relationship and Selector in Meshery.",
                    "version": "v1alpha3",
                    "contact": {
                      "name": "Meshery Maintainers",
                      "email": "maintainers@meshery.io",
                      "url": "https://meshery.io"
                    },
                    "license": {
                      "name": "Apache 2.0",
                      "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
                    }
                  },
                  "paths": {},
                  "components": {
                    "schemas": {
                      "MutatorRef": {
                        "type": "array",
                        "description": "JSON ref to value from where patch should be applied.",
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                        }
                      },
                      "MutatedRef": {
                        "type": "array",
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                        }
                      },
                      "RelationshipDefinitionSelectorsPatchStrategy": {
                        "type": "string",
                        "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                        "enum": [
                          "merge",
                          "strategic",
                          "add",
                          "remove",
                          "copy",
                          "move",
                          "test"
                        ]
                      },
                      "RelationshipDefinition_Selectors_Patch": {
                        "type": "object",
                        "description": "Patch configuration for the selector",
                        "properties": {
                          "patchStrategy": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "patchStrategy,omitempty",
                              "json": "patchStrategy,omitempty"
                            },
                            "type": "string",
                            "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                            "enum": [
                              "merge",
                              "strategic",
                              "add",
                              "remove",
                              "copy",
                              "move",
                              "test"
                            ]
                          },
                          "mutatorRef": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mutatorRef,omitempty",
                              "json": "mutatorRef,omitempty"
                            },
                            "type": "array",
                            "description": "JSON ref to value from where patch should be applied.",
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                            }
                          },
                          "mutatedRef": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mutatedRef,omitempty",
                              "json": "mutatedRef,omitempty"
                            },
                            "type": "array",
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                            }
                          }
                        }
                      },
                      "MatchSelectorItem": {
                        "type": "object",
                        "description": "Match selector item for binding between nodes",
                        "required": [
                          "kind"
                        ],
                        "properties": {
                          "id": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "id",
                              "json": "id"
                            },
                            "type": "string",
                            "format": "uuid",
                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                            "x-go-type": "uuid.UUID",
                            "x-go-type-import": {
                              "path": "github.com/gofrs/uuid"
                            }
                          },
                          "kind": {
                            "type": "string",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "kind",
                              "json": "kind"
                            }
                          },
                          "mutatorRef": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mutatorRef,omitempty",
                              "json": "mutatorRef,omitempty"
                            },
                            "type": "array",
                            "description": "JSON ref to value from where patch should be applied.",
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                            }
                          },
                          "mutatedRef": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mutatedRef,omitempty",
                              "json": "mutatedRef,omitempty"
                            },
                            "type": "array",
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                            }
                          }
                        }
                      },
                      "MatchSelector": {
                        "type": "object",
                        "description": "Match configuration for selector",
                        "properties": {
                          "refs": {
                            "type": "array",
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "refs,omitempty",
                              "json": "refs,omitempty"
                            }
                          },
                          "from": {
                            "type": "array",
                            "items": {
                              "x-go-type": "MatchSelectorItem",
                              "type": "object",
                              "description": "Match selector item for binding between nodes",
                              "required": [
                                "kind"
                              ],
                              "properties": {
                                "id": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "id",
                                    "json": "id"
                                  },
                                  "type": "string",
                                  "format": "uuid",
                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "kind": {
                                  "type": "string",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "kind",
                                    "json": "kind"
                                  }
                                },
                                "mutatorRef": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "mutatorRef,omitempty",
                                    "json": "mutatorRef,omitempty"
                                  },
                                  "type": "array",
                                  "description": "JSON ref to value from where patch should be applied.",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                  }
                                },
                                "mutatedRef": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "mutatedRef,omitempty",
                                    "json": "mutatedRef,omitempty"
                                  },
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                  }
                                }
                              }
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "from,omitempty",
                              "json": "from,omitempty"
                            }
                          },
                          "to": {
                            "type": "array",
                            "items": {
                              "x-go-type": "MatchSelectorItem",
                              "type": "object",
                              "description": "Match selector item for binding between nodes",
                              "required": [
                                "kind"
                              ],
                              "properties": {
                                "id": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "id",
                                    "json": "id"
                                  },
                                  "type": "string",
                                  "format": "uuid",
                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "kind": {
                                  "type": "string",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "kind",
                                    "json": "kind"
                                  }
                                },
                                "mutatorRef": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "mutatorRef,omitempty",
                                    "json": "mutatorRef,omitempty"
                                  },
                                  "type": "array",
                                  "description": "JSON ref to value from where patch should be applied.",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                  }
                                },
                                "mutatedRef": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "mutatedRef,omitempty",
                                    "json": "mutatedRef,omitempty"
                                  },
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                  }
                                }
                              }
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "to,omitempty",
                              "json": "to,omitempty"
                            }
                          }
                        },
                        "x-oapi-codegen-extra-tags": {
                          "yaml": "match,omitempty",
                          "json": "match,omitempty"
                        }
                      },
                      "SelectorItem": {
                        "type": "object",
                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                        "properties": {
                          "id": {
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "id",
                              "json": "id"
                            },
                            "type": "string",
                            "format": "uuid",
                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                            "x-go-type": "uuid.UUID",
                            "x-go-type-import": {
                              "path": "github.com/gofrs/uuid"
                            }
                          },
                          "kind": {
                            "type": "string",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "kind",
                              "json": "kind"
                            }
                          },
                          "match": {
                            "x-go-type": "MatchSelector",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "match,omitempty",
                              "json": "match,omitempty"
                            },
                            "type": "object",
                            "description": "Match configuration for selector",
                            "properties": {
                              "refs": {
                                "type": "array",
                                "items": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "refs,omitempty",
                                  "json": "refs,omitempty"
                                }
                              },
                              "from": {
                                "type": "array",
                                "items": {
                                  "x-go-type": "MatchSelectorItem",
                                  "type": "object",
                                  "description": "Match selector item for binding between nodes",
                                  "required": [
                                    "kind"
                                  ],
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "from,omitempty",
                                  "json": "from,omitempty"
                                }
                              },
                              "to": {
                                "type": "array",
                                "items": {
                                  "x-go-type": "MatchSelectorItem",
                                  "type": "object",
                                  "description": "Match selector item for binding between nodes",
                                  "required": [
                                    "kind"
                                  ],
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "to,omitempty",
                                  "json": "to,omitempty"
                                }
                              }
                            }
                          },
                          "match_strategy_matrix": {
                            "description": "Match strategy matrix for the selector",
                            "type": "array",
                            "items": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "match_strategy_matrix",
                              "json": "match_strategy_matrix"
                            }
                          },
                          "model": {
                            "x-go-type": "modelv1beta1.ModelReference",
                            "x-go-type-import": {
                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                              "name": "modelv1beta1"
                            },
                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "model",
                              "json": "model,omitempty"
                            },
                            "x-generate-db-helpers": true,
                            "type": "object",
                            "required": [
                              "id",
                              "name",
                              "version",
                              "displayName",
                              "model",
                              "registrant"
                            ],
                            "properties": {
                              "id": {
                                "type": "string",
                                "format": "uuid",
                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "name": {
                                "type": "string",
                                "description": "The unique name for the model within the scope of a registrant.",
                                "pattern": "^[a-z0-9-]+$",
                                "examples": [
                                  "cert-manager"
                                ]
                              },
                              "version": {
                                "description": "Version of the model definition.",
                                "type": "string",
                                "minLength": 5,
                                "maxLength": 100,
                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                              },
                              "displayName": {
                                "type": "string",
                                "description": "Human-readable name for the model.",
                                "minLength": 1,
                                "maxLength": 100,
                                "pattern": "^[a-zA-Z0-9 ]+$",
                                "examples": [
                                  "Cert Manager"
                                ]
                              },
                              "model": {
                                "type": "object",
                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                "required": [
                                  "version"
                                ],
                                "properties": {
                                  "version": {
                                    "description": "Version of the model as defined by the registrant.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "version"
                                    },
                                    "x-order": 1,
                                    "type": "string",
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  }
                                }
                              },
                              "registrant": {
                                "x-go-type": "RegistrantReference",
                                "x-oapi-codegen-extra-tags": {
                                  "json": "registrant"
                                },
                                "type": "object",
                                "required": [
                                  "kind"
                                ],
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "description": "Kind of the registrant.",
                                    "maxLength": 255
                                  }
                                }
                              }
                            }
                          },
                          "patch": {
                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "patch",
                              "json": "patch"
                            },
                            "type": "object",
                            "description": "Patch configuration for the selector",
                            "properties": {
                              "patchStrategy": {
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "patchStrategy,omitempty",
                                  "json": "patchStrategy,omitempty"
                                },
                                "type": "string",
                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                "enum": [
                                  "merge",
                                  "strategic",
                                  "add",
                                  "remove",
                                  "copy",
                                  "move",
                                  "test"
                                ]
                              },
                              "mutatorRef": {
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "mutatorRef,omitempty",
                                  "json": "mutatorRef,omitempty"
                                },
                                "type": "array",
                                "description": "JSON ref to value from where patch should be applied.",
                                "items": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                }
                              },
                              "mutatedRef": {
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "mutatedRef,omitempty",
                                  "json": "mutatedRef,omitempty"
                                },
                                "type": "array",
                                "items": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                }
                              }
                            }
                          }
                        }
                      },
                      "Selector": {
                        "type": "object",
                        "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                        "required": [
                          "from",
                          "to"
                        ],
                        "properties": {
                          "from": {
                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                            "type": "array",
                            "items": {
                              "x-go-type": "SelectorItem",
                              "type": "object",
                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                              "properties": {
                                "id": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "id",
                                    "json": "id"
                                  },
                                  "type": "string",
                                  "format": "uuid",
                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "kind": {
                                  "type": "string",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "kind",
                                    "json": "kind"
                                  }
                                },
                                "match": {
                                  "x-go-type": "MatchSelector",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match,omitempty",
                                    "json": "match,omitempty"
                                  },
                                  "type": "object",
                                  "description": "Match configuration for selector",
                                  "properties": {
                                    "refs": {
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "refs,omitempty",
                                        "json": "refs,omitempty"
                                      }
                                    },
                                    "from": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from,omitempty",
                                        "json": "from,omitempty"
                                      }
                                    },
                                    "to": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to,omitempty",
                                        "json": "to,omitempty"
                                      }
                                    }
                                  }
                                },
                                "match_strategy_matrix": {
                                  "description": "Match strategy matrix for the selector",
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match_strategy_matrix",
                                    "json": "match_strategy_matrix"
                                  }
                                },
                                "model": {
                                  "x-go-type": "modelv1beta1.ModelReference",
                                  "x-go-type-import": {
                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                    "name": "modelv1beta1"
                                  },
                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "model",
                                    "json": "model,omitempty"
                                  },
                                  "x-generate-db-helpers": true,
                                  "type": "object",
                                  "required": [
                                    "id",
                                    "name",
                                    "version",
                                    "displayName",
                                    "model",
                                    "registrant"
                                  ],
                                  "properties": {
                                    "id": {
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "The unique name for the model within the scope of a registrant.",
                                      "pattern": "^[a-z0-9-]+$",
                                      "examples": [
                                        "cert-manager"
                                      ]
                                    },
                                    "version": {
                                      "description": "Version of the model definition.",
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    },
                                    "displayName": {
                                      "type": "string",
                                      "description": "Human-readable name for the model.",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                      "examples": [
                                        "Cert Manager"
                                      ]
                                    },
                                    "model": {
                                      "type": "object",
                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                      "required": [
                                        "version"
                                      ],
                                      "properties": {
                                        "version": {
                                          "description": "Version of the model as defined by the registrant.",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "version"
                                          },
                                          "x-order": 1,
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        }
                                      }
                                    },
                                    "registrant": {
                                      "x-go-type": "RegistrantReference",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "registrant"
                                      },
                                      "type": "object",
                                      "required": [
                                        "kind"
                                      ],
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "description": "Kind of the registrant.",
                                          "maxLength": 255
                                        }
                                      }
                                    }
                                  }
                                },
                                "patch": {
                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "patch",
                                    "json": "patch"
                                  },
                                  "type": "object",
                                  "description": "Patch configuration for the selector",
                                  "properties": {
                                    "patchStrategy": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patchStrategy,omitempty",
                                        "json": "patchStrategy,omitempty"
                                      },
                                      "type": "string",
                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                      "enum": [
                                        "merge",
                                        "strategic",
                                        "add",
                                        "remove",
                                        "copy",
                                        "move",
                                        "test"
                                      ]
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                }
                              }
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "from",
                              "json": "from"
                            }
                          },
                          "to": {
                            "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                            "type": "array",
                            "items": {
                              "x-go-type": "SelectorItem",
                              "type": "object",
                              "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                              "properties": {
                                "id": {
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "id",
                                    "json": "id"
                                  },
                                  "type": "string",
                                  "format": "uuid",
                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                  "x-go-type": "uuid.UUID",
                                  "x-go-type-import": {
                                    "path": "github.com/gofrs/uuid"
                                  }
                                },
                                "kind": {
                                  "type": "string",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "kind",
                                    "json": "kind"
                                  }
                                },
                                "match": {
                                  "x-go-type": "MatchSelector",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match,omitempty",
                                    "json": "match,omitempty"
                                  },
                                  "type": "object",
                                  "description": "Match configuration for selector",
                                  "properties": {
                                    "refs": {
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "refs,omitempty",
                                        "json": "refs,omitempty"
                                      }
                                    },
                                    "from": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from,omitempty",
                                        "json": "from,omitempty"
                                      }
                                    },
                                    "to": {
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "MatchSelectorItem",
                                        "type": "object",
                                        "description": "Match selector item for binding between nodes",
                                        "required": [
                                          "kind"
                                        ],
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to,omitempty",
                                        "json": "to,omitempty"
                                      }
                                    }
                                  }
                                },
                                "match_strategy_matrix": {
                                  "description": "Match strategy matrix for the selector",
                                  "type": "array",
                                  "items": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "match_strategy_matrix",
                                    "json": "match_strategy_matrix"
                                  }
                                },
                                "model": {
                                  "x-go-type": "modelv1beta1.ModelReference",
                                  "x-go-type-import": {
                                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                                    "name": "modelv1beta1"
                                  },
                                  "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "model",
                                    "json": "model,omitempty"
                                  },
                                  "x-generate-db-helpers": true,
                                  "type": "object",
                                  "required": [
                                    "id",
                                    "name",
                                    "version",
                                    "displayName",
                                    "model",
                                    "registrant"
                                  ],
                                  "properties": {
                                    "id": {
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "The unique name for the model within the scope of a registrant.",
                                      "pattern": "^[a-z0-9-]+$",
                                      "examples": [
                                        "cert-manager"
                                      ]
                                    },
                                    "version": {
                                      "description": "Version of the model definition.",
                                      "type": "string",
                                      "minLength": 5,
                                      "maxLength": 100,
                                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                    },
                                    "displayName": {
                                      "type": "string",
                                      "description": "Human-readable name for the model.",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "pattern": "^[a-zA-Z0-9 ]+$",
                                      "examples": [
                                        "Cert Manager"
                                      ]
                                    },
                                    "model": {
                                      "type": "object",
                                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                      "required": [
                                        "version"
                                      ],
                                      "properties": {
                                        "version": {
                                          "description": "Version of the model as defined by the registrant.",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "version"
                                          },
                                          "x-order": 1,
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        }
                                      }
                                    },
                                    "registrant": {
                                      "x-go-type": "RegistrantReference",
                                      "x-oapi-codegen-extra-tags": {
                                        "json": "registrant"
                                      },
                                      "type": "object",
                                      "required": [
                                        "kind"
                                      ],
                                      "properties": {
                                        "kind": {
                                          "type": "string",
                                          "description": "Kind of the registrant.",
                                          "maxLength": 255
                                        }
                                      }
                                    }
                                  }
                                },
                                "patch": {
                                  "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "patch",
                                    "json": "patch"
                                  },
                                  "type": "object",
                                  "description": "Patch configuration for the selector",
                                  "properties": {
                                    "patchStrategy": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patchStrategy,omitempty",
                                        "json": "patchStrategy,omitempty"
                                      },
                                      "type": "string",
                                      "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                      "enum": [
                                        "merge",
                                        "strategic",
                                        "add",
                                        "remove",
                                        "copy",
                                        "move",
                                        "test"
                                      ]
                                    },
                                    "mutatorRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatorRef,omitempty",
                                        "json": "mutatorRef,omitempty"
                                      },
                                      "type": "array",
                                      "description": "JSON ref to value from where patch should be applied.",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                      }
                                    },
                                    "mutatedRef": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "mutatedRef,omitempty",
                                        "json": "mutatedRef,omitempty"
                                      },
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        },
                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                      }
                                    }
                                  }
                                }
                              }
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "to",
                              "json": "to"
                            }
                          }
                        }
                      },
                      "SelectorSetItem": {
                        "type": "object",
                        "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                        "required": [
                          "allow"
                        ],
                        "properties": {
                          "allow": {
                            "description": "Selectors used to define relationships which are allowed.",
                            "x-go-type": "Selector",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "allow",
                              "json": "allow"
                            },
                            "type": "object",
                            "required": [
                              "from",
                              "to"
                            ],
                            "properties": {
                              "from": {
                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                "type": "array",
                                "items": {
                                  "x-go-type": "SelectorItem",
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "from",
                                  "json": "from"
                                }
                              },
                              "to": {
                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                "type": "array",
                                "items": {
                                  "x-go-type": "SelectorItem",
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "to",
                                  "json": "to"
                                }
                              }
                            }
                          },
                          "deny": {
                            "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                            "x-go-type": "Selector",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "deny,omitempty",
                              "json": "deny,omitempty"
                            },
                            "type": "object",
                            "required": [
                              "from",
                              "to"
                            ],
                            "properties": {
                              "from": {
                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                "type": "array",
                                "items": {
                                  "x-go-type": "SelectorItem",
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "from",
                                  "json": "from"
                                }
                              },
                              "to": {
                                "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                "type": "array",
                                "items": {
                                  "x-go-type": "SelectorItem",
                                  "type": "object",
                                  "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                  "properties": {
                                    "id": {
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "id",
                                        "json": "id"
                                      },
                                      "type": "string",
                                      "format": "uuid",
                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                      "x-go-type": "uuid.UUID",
                                      "x-go-type-import": {
                                        "path": "github.com/gofrs/uuid"
                                      }
                                    },
                                    "kind": {
                                      "type": "string",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "kind",
                                        "json": "kind"
                                      }
                                    },
                                    "match": {
                                      "x-go-type": "MatchSelector",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match,omitempty",
                                        "json": "match,omitempty"
                                      },
                                      "type": "object",
                                      "description": "Match configuration for selector",
                                      "properties": {
                                        "refs": {
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "refs,omitempty",
                                            "json": "refs,omitempty"
                                          }
                                        },
                                        "from": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "from,omitempty",
                                            "json": "from,omitempty"
                                          }
                                        },
                                        "to": {
                                          "type": "array",
                                          "items": {
                                            "x-go-type": "MatchSelectorItem",
                                            "type": "object",
                                            "description": "Match selector item for binding between nodes",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "id": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "id",
                                                  "json": "id"
                                                },
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "kind": {
                                                "type": "string",
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "kind",
                                                  "json": "kind"
                                                }
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          },
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "to,omitempty",
                                            "json": "to,omitempty"
                                          }
                                        }
                                      }
                                    },
                                    "match_strategy_matrix": {
                                      "description": "Match strategy matrix for the selector",
                                      "type": "array",
                                      "items": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "match_strategy_matrix",
                                        "json": "match_strategy_matrix"
                                      }
                                    },
                                    "model": {
                                      "x-go-type": "modelv1beta1.ModelReference",
                                      "x-go-type-import": {
                                        "path": "github.com/meshery/schemas/models/v1beta1/model",
                                        "name": "modelv1beta1"
                                      },
                                      "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "model",
                                        "json": "model,omitempty"
                                      },
                                      "x-generate-db-helpers": true,
                                      "type": "object",
                                      "required": [
                                        "id",
                                        "name",
                                        "version",
                                        "displayName",
                                        "model",
                                        "registrant"
                                      ],
                                      "properties": {
                                        "id": {
                                          "type": "string",
                                          "format": "uuid",
                                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                          "x-go-type": "uuid.UUID",
                                          "x-go-type-import": {
                                            "path": "github.com/gofrs/uuid"
                                          }
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "The unique name for the model within the scope of a registrant.",
                                          "pattern": "^[a-z0-9-]+$",
                                          "examples": [
                                            "cert-manager"
                                          ]
                                        },
                                        "version": {
                                          "description": "Version of the model definition.",
                                          "type": "string",
                                          "minLength": 5,
                                          "maxLength": 100,
                                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                        },
                                        "displayName": {
                                          "type": "string",
                                          "description": "Human-readable name for the model.",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "pattern": "^[a-zA-Z0-9 ]+$",
                                          "examples": [
                                            "Cert Manager"
                                          ]
                                        },
                                        "model": {
                                          "type": "object",
                                          "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                          "required": [
                                            "version"
                                          ],
                                          "properties": {
                                            "version": {
                                              "description": "Version of the model as defined by the registrant.",
                                              "x-oapi-codegen-extra-tags": {
                                                "json": "version"
                                              },
                                              "x-order": 1,
                                              "type": "string",
                                              "minLength": 5,
                                              "maxLength": 100,
                                              "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                            }
                                          }
                                        },
                                        "registrant": {
                                          "x-go-type": "RegistrantReference",
                                          "x-oapi-codegen-extra-tags": {
                                            "json": "registrant"
                                          },
                                          "type": "object",
                                          "required": [
                                            "kind"
                                          ],
                                          "properties": {
                                            "kind": {
                                              "type": "string",
                                              "description": "Kind of the registrant.",
                                              "maxLength": 255
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "patch": {
                                      "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "patch",
                                        "json": "patch"
                                      },
                                      "type": "object",
                                      "description": "Patch configuration for the selector",
                                      "properties": {
                                        "patchStrategy": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "patchStrategy,omitempty",
                                            "json": "patchStrategy,omitempty"
                                          },
                                          "type": "string",
                                          "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                          "enum": [
                                            "merge",
                                            "strategic",
                                            "add",
                                            "remove",
                                            "copy",
                                            "move",
                                            "test"
                                          ]
                                        },
                                        "mutatorRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatorRef,omitempty",
                                            "json": "mutatorRef,omitempty"
                                          },
                                          "type": "array",
                                          "description": "JSON ref to value from where patch should be applied.",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                          }
                                        },
                                        "mutatedRef": {
                                          "x-oapi-codegen-extra-tags": {
                                            "yaml": "mutatedRef,omitempty",
                                            "json": "mutatedRef,omitempty"
                                          },
                                          "type": "array",
                                          "items": {
                                            "type": "array",
                                            "items": {
                                              "type": "string"
                                            },
                                            "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                          }
                                        }
                                      }
                                    }
                                  }
                                },
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "to",
                                  "json": "to"
                                }
                              }
                            }
                          }
                        }
                      },
                      "SelectorSet": {
                        "type": "array",
                        "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "type:bytes;serializer:json"
                        },
                        "items": {
                          "x-go-type": "SelectorSetItem",
                          "type": "object",
                          "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                          "required": [
                            "allow"
                          ],
                          "properties": {
                            "allow": {
                              "description": "Selectors used to define relationships which are allowed.",
                              "x-go-type": "Selector",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "allow",
                                "json": "allow"
                              },
                              "type": "object",
                              "required": [
                                "from",
                                "to"
                              ],
                              "properties": {
                                "from": {
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "type": "array",
                                  "items": {
                                    "x-go-type": "SelectorItem",
                                    "type": "object",
                                    "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                    "properties": {
                                      "id": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "kind": {
                                        "type": "string",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "kind",
                                          "json": "kind"
                                        }
                                      },
                                      "match": {
                                        "x-go-type": "MatchSelector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match,omitempty",
                                          "json": "match,omitempty"
                                        },
                                        "type": "object",
                                        "description": "Match configuration for selector",
                                        "properties": {
                                          "refs": {
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "refs,omitempty",
                                              "json": "refs,omitempty"
                                            }
                                          },
                                          "from": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from,omitempty",
                                              "json": "from,omitempty"
                                            }
                                          },
                                          "to": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to,omitempty",
                                              "json": "to,omitempty"
                                            }
                                          }
                                        }
                                      },
                                      "match_strategy_matrix": {
                                        "description": "Match strategy matrix for the selector",
                                        "type": "array",
                                        "items": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match_strategy_matrix",
                                          "json": "match_strategy_matrix"
                                        }
                                      },
                                      "model": {
                                        "x-go-type": "modelv1beta1.ModelReference",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/model",
                                          "name": "modelv1beta1"
                                        },
                                        "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "model",
                                          "json": "model,omitempty"
                                        },
                                        "x-generate-db-helpers": true,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "name",
                                          "version",
                                          "displayName",
                                          "model",
                                          "registrant"
                                        ],
                                        "properties": {
                                          "id": {
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "description": "The unique name for the model within the scope of a registrant.",
                                            "pattern": "^[a-z0-9-]+$",
                                            "examples": [
                                              "cert-manager"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the model definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "type": "string",
                                            "description": "Human-readable name for the model.",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "pattern": "^[a-zA-Z0-9 ]+$",
                                            "examples": [
                                              "Cert Manager"
                                            ]
                                          },
                                          "model": {
                                            "type": "object",
                                            "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                            "required": [
                                              "version"
                                            ],
                                            "properties": {
                                              "version": {
                                                "description": "Version of the model as defined by the registrant.",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "version"
                                                },
                                                "x-order": 1,
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              }
                                            }
                                          },
                                          "registrant": {
                                            "x-go-type": "RegistrantReference",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "registrant"
                                            },
                                            "type": "object",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "kind": {
                                                "type": "string",
                                                "description": "Kind of the registrant.",
                                                "maxLength": 255
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "patch": {
                                        "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "patch",
                                          "json": "patch"
                                        },
                                        "type": "object",
                                        "description": "Patch configuration for the selector",
                                        "properties": {
                                          "patchStrategy": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patchStrategy,omitempty",
                                              "json": "patchStrategy,omitempty"
                                            },
                                            "type": "string",
                                            "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                            "enum": [
                                              "merge",
                                              "strategic",
                                              "add",
                                              "remove",
                                              "copy",
                                              "move",
                                              "test"
                                            ]
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "from",
                                    "json": "from"
                                  }
                                },
                                "to": {
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "type": "array",
                                  "items": {
                                    "x-go-type": "SelectorItem",
                                    "type": "object",
                                    "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                    "properties": {
                                      "id": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "kind": {
                                        "type": "string",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "kind",
                                          "json": "kind"
                                        }
                                      },
                                      "match": {
                                        "x-go-type": "MatchSelector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match,omitempty",
                                          "json": "match,omitempty"
                                        },
                                        "type": "object",
                                        "description": "Match configuration for selector",
                                        "properties": {
                                          "refs": {
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "refs,omitempty",
                                              "json": "refs,omitempty"
                                            }
                                          },
                                          "from": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from,omitempty",
                                              "json": "from,omitempty"
                                            }
                                          },
                                          "to": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to,omitempty",
                                              "json": "to,omitempty"
                                            }
                                          }
                                        }
                                      },
                                      "match_strategy_matrix": {
                                        "description": "Match strategy matrix for the selector",
                                        "type": "array",
                                        "items": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match_strategy_matrix",
                                          "json": "match_strategy_matrix"
                                        }
                                      },
                                      "model": {
                                        "x-go-type": "modelv1beta1.ModelReference",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/model",
                                          "name": "modelv1beta1"
                                        },
                                        "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "model",
                                          "json": "model,omitempty"
                                        },
                                        "x-generate-db-helpers": true,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "name",
                                          "version",
                                          "displayName",
                                          "model",
                                          "registrant"
                                        ],
                                        "properties": {
                                          "id": {
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "description": "The unique name for the model within the scope of a registrant.",
                                            "pattern": "^[a-z0-9-]+$",
                                            "examples": [
                                              "cert-manager"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the model definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "type": "string",
                                            "description": "Human-readable name for the model.",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "pattern": "^[a-zA-Z0-9 ]+$",
                                            "examples": [
                                              "Cert Manager"
                                            ]
                                          },
                                          "model": {
                                            "type": "object",
                                            "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                            "required": [
                                              "version"
                                            ],
                                            "properties": {
                                              "version": {
                                                "description": "Version of the model as defined by the registrant.",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "version"
                                                },
                                                "x-order": 1,
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              }
                                            }
                                          },
                                          "registrant": {
                                            "x-go-type": "RegistrantReference",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "registrant"
                                            },
                                            "type": "object",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "kind": {
                                                "type": "string",
                                                "description": "Kind of the registrant.",
                                                "maxLength": 255
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "patch": {
                                        "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "patch",
                                          "json": "patch"
                                        },
                                        "type": "object",
                                        "description": "Patch configuration for the selector",
                                        "properties": {
                                          "patchStrategy": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patchStrategy,omitempty",
                                              "json": "patchStrategy,omitempty"
                                            },
                                            "type": "string",
                                            "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                            "enum": [
                                              "merge",
                                              "strategic",
                                              "add",
                                              "remove",
                                              "copy",
                                              "move",
                                              "test"
                                            ]
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "to",
                                    "json": "to"
                                  }
                                }
                              }
                            },
                            "deny": {
                              "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                              "x-go-type": "Selector",
                              "x-oapi-codegen-extra-tags": {
                                "yaml": "deny,omitempty",
                                "json": "deny,omitempty"
                              },
                              "type": "object",
                              "required": [
                                "from",
                                "to"
                              ],
                              "properties": {
                                "from": {
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "type": "array",
                                  "items": {
                                    "x-go-type": "SelectorItem",
                                    "type": "object",
                                    "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                    "properties": {
                                      "id": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "kind": {
                                        "type": "string",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "kind",
                                          "json": "kind"
                                        }
                                      },
                                      "match": {
                                        "x-go-type": "MatchSelector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match,omitempty",
                                          "json": "match,omitempty"
                                        },
                                        "type": "object",
                                        "description": "Match configuration for selector",
                                        "properties": {
                                          "refs": {
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "refs,omitempty",
                                              "json": "refs,omitempty"
                                            }
                                          },
                                          "from": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from,omitempty",
                                              "json": "from,omitempty"
                                            }
                                          },
                                          "to": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to,omitempty",
                                              "json": "to,omitempty"
                                            }
                                          }
                                        }
                                      },
                                      "match_strategy_matrix": {
                                        "description": "Match strategy matrix for the selector",
                                        "type": "array",
                                        "items": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match_strategy_matrix",
                                          "json": "match_strategy_matrix"
                                        }
                                      },
                                      "model": {
                                        "x-go-type": "modelv1beta1.ModelReference",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/model",
                                          "name": "modelv1beta1"
                                        },
                                        "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "model",
                                          "json": "model,omitempty"
                                        },
                                        "x-generate-db-helpers": true,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "name",
                                          "version",
                                          "displayName",
                                          "model",
                                          "registrant"
                                        ],
                                        "properties": {
                                          "id": {
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "description": "The unique name for the model within the scope of a registrant.",
                                            "pattern": "^[a-z0-9-]+$",
                                            "examples": [
                                              "cert-manager"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the model definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "type": "string",
                                            "description": "Human-readable name for the model.",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "pattern": "^[a-zA-Z0-9 ]+$",
                                            "examples": [
                                              "Cert Manager"
                                            ]
                                          },
                                          "model": {
                                            "type": "object",
                                            "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                            "required": [
                                              "version"
                                            ],
                                            "properties": {
                                              "version": {
                                                "description": "Version of the model as defined by the registrant.",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "version"
                                                },
                                                "x-order": 1,
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              }
                                            }
                                          },
                                          "registrant": {
                                            "x-go-type": "RegistrantReference",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "registrant"
                                            },
                                            "type": "object",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "kind": {
                                                "type": "string",
                                                "description": "Kind of the registrant.",
                                                "maxLength": 255
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "patch": {
                                        "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "patch",
                                          "json": "patch"
                                        },
                                        "type": "object",
                                        "description": "Patch configuration for the selector",
                                        "properties": {
                                          "patchStrategy": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patchStrategy,omitempty",
                                              "json": "patchStrategy,omitempty"
                                            },
                                            "type": "string",
                                            "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                            "enum": [
                                              "merge",
                                              "strategic",
                                              "add",
                                              "remove",
                                              "copy",
                                              "move",
                                              "test"
                                            ]
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "from",
                                    "json": "from"
                                  }
                                },
                                "to": {
                                  "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                  "type": "array",
                                  "items": {
                                    "x-go-type": "SelectorItem",
                                    "type": "object",
                                    "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                    "properties": {
                                      "id": {
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "id",
                                          "json": "id"
                                        },
                                        "type": "string",
                                        "format": "uuid",
                                        "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                        "x-go-type": "uuid.UUID",
                                        "x-go-type-import": {
                                          "path": "github.com/gofrs/uuid"
                                        }
                                      },
                                      "kind": {
                                        "type": "string",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "kind",
                                          "json": "kind"
                                        }
                                      },
                                      "match": {
                                        "x-go-type": "MatchSelector",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match,omitempty",
                                          "json": "match,omitempty"
                                        },
                                        "type": "object",
                                        "description": "Match configuration for selector",
                                        "properties": {
                                          "refs": {
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "refs,omitempty",
                                              "json": "refs,omitempty"
                                            }
                                          },
                                          "from": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "from,omitempty",
                                              "json": "from,omitempty"
                                            }
                                          },
                                          "to": {
                                            "type": "array",
                                            "items": {
                                              "x-go-type": "MatchSelectorItem",
                                              "type": "object",
                                              "description": "Match selector item for binding between nodes",
                                              "required": [
                                                "kind"
                                              ],
                                              "properties": {
                                                "id": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "id",
                                                    "json": "id"
                                                  },
                                                  "type": "string",
                                                  "format": "uuid",
                                                  "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                  "x-go-type": "uuid.UUID",
                                                  "x-go-type-import": {
                                                    "path": "github.com/gofrs/uuid"
                                                  }
                                                },
                                                "kind": {
                                                  "type": "string",
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "kind",
                                                    "json": "kind"
                                                  }
                                                },
                                                "mutatorRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatorRef,omitempty",
                                                    "json": "mutatorRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "description": "JSON ref to value from where patch should be applied.",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                  }
                                                },
                                                "mutatedRef": {
                                                  "x-oapi-codegen-extra-tags": {
                                                    "yaml": "mutatedRef,omitempty",
                                                    "json": "mutatedRef,omitempty"
                                                  },
                                                  "type": "array",
                                                  "items": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    },
                                                    "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                  }
                                                }
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "to,omitempty",
                                              "json": "to,omitempty"
                                            }
                                          }
                                        }
                                      },
                                      "match_strategy_matrix": {
                                        "description": "Match strategy matrix for the selector",
                                        "type": "array",
                                        "items": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          }
                                        },
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "match_strategy_matrix",
                                          "json": "match_strategy_matrix"
                                        }
                                      },
                                      "model": {
                                        "x-go-type": "modelv1beta1.ModelReference",
                                        "x-go-type-import": {
                                          "path": "github.com/meshery/schemas/models/v1beta1/model",
                                          "name": "modelv1beta1"
                                        },
                                        "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "model",
                                          "json": "model,omitempty"
                                        },
                                        "x-generate-db-helpers": true,
                                        "type": "object",
                                        "required": [
                                          "id",
                                          "name",
                                          "version",
                                          "displayName",
                                          "model",
                                          "registrant"
                                        ],
                                        "properties": {
                                          "id": {
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "name": {
                                            "type": "string",
                                            "description": "The unique name for the model within the scope of a registrant.",
                                            "pattern": "^[a-z0-9-]+$",
                                            "examples": [
                                              "cert-manager"
                                            ]
                                          },
                                          "version": {
                                            "description": "Version of the model definition.",
                                            "type": "string",
                                            "minLength": 5,
                                            "maxLength": 100,
                                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                          },
                                          "displayName": {
                                            "type": "string",
                                            "description": "Human-readable name for the model.",
                                            "minLength": 1,
                                            "maxLength": 100,
                                            "pattern": "^[a-zA-Z0-9 ]+$",
                                            "examples": [
                                              "Cert Manager"
                                            ]
                                          },
                                          "model": {
                                            "type": "object",
                                            "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                            "required": [
                                              "version"
                                            ],
                                            "properties": {
                                              "version": {
                                                "description": "Version of the model as defined by the registrant.",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "version"
                                                },
                                                "x-order": 1,
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              }
                                            }
                                          },
                                          "registrant": {
                                            "x-go-type": "RegistrantReference",
                                            "x-oapi-codegen-extra-tags": {
                                              "json": "registrant"
                                            },
                                            "type": "object",
                                            "required": [
                                              "kind"
                                            ],
                                            "properties": {
                                              "kind": {
                                                "type": "string",
                                                "description": "Kind of the registrant.",
                                                "maxLength": 255
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "patch": {
                                        "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                        "x-oapi-codegen-extra-tags": {
                                          "yaml": "patch",
                                          "json": "patch"
                                        },
                                        "type": "object",
                                        "description": "Patch configuration for the selector",
                                        "properties": {
                                          "patchStrategy": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patchStrategy,omitempty",
                                              "json": "patchStrategy,omitempty"
                                            },
                                            "type": "string",
                                            "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                            "enum": [
                                              "merge",
                                              "strategic",
                                              "add",
                                              "remove",
                                              "copy",
                                              "move",
                                              "test"
                                            ]
                                          },
                                          "mutatorRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatorRef,omitempty",
                                              "json": "mutatorRef,omitempty"
                                            },
                                            "type": "array",
                                            "description": "JSON ref to value from where patch should be applied.",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                            }
                                          },
                                          "mutatedRef": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "mutatedRef,omitempty",
                                              "json": "mutatedRef,omitempty"
                                            },
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              },
                                              "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                            }
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "to",
                                    "json": "to"
                                  }
                                }
                              }
                            }
                          }
                        }
                      },
                      "RelationshipDefinitionMetadataStylesTextTransform": {
                        "type": "string",
                        "description": "A transformation to apply to the label text",
                        "enum": [
                          "none",
                          "uppercase",
                          "lowercase"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesLineStyle": {
                        "type": "string",
                        "description": "The style of the edge's line.",
                        "enum": [
                          "solid",
                          "dotted",
                          "dashed"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesCurveStyle": {
                        "type": "string",
                        "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                        "enum": [
                          "haystack",
                          "straight",
                          "bezier",
                          "unbundled-bezier",
                          "segments",
                          "taxi"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesLineCap": {
                        "type": "string",
                        "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                        "enum": [
                          "butt",
                          "round",
                          "square"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesArrowShape": {
                        "type": "string",
                        "description": "The shape of the edge's arrow",
                        "enum": [
                          "triangle",
                          "triangle-tee",
                          "circle-triangle",
                          "triangle-cross",
                          "triangle-backcurve",
                          "vee",
                          "tee",
                          "square",
                          "circle",
                          "diamond",
                          "chevron",
                          "none"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesMidTargetArrowShape": {
                        "type": "string",
                        "description": "The shape of the edge's source arrow",
                        "enum": [
                          "triangle",
                          "triangle-tee",
                          "circle-triangle",
                          "triangle-cross",
                          "triangle-backcurve",
                          "vee",
                          "tee",
                          "square",
                          "circle",
                          "diamond",
                          "chevron",
                          "none"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesMidTargetArrowFill": {
                        "type": "string",
                        "description": "The fill state of the edge's source arrow",
                        "enum": [
                          "filled",
                          "hollow"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesTargetArrowShape": {
                        "type": "string",
                        "description": "The shape of the edge's source arrow",
                        "enum": [
                          "triangle",
                          "triangle-tee",
                          "circle-triangle",
                          "triangle-cross",
                          "triangle-backcurve",
                          "vee",
                          "tee",
                          "square",
                          "circle",
                          "diamond",
                          "chevron",
                          "none"
                        ]
                      },
                      "RelationshipDefinitionMetadataStylesTargetArrowFill": {
                        "type": "string",
                        "description": "The fill state of the edge's source arrow",
                        "enum": [
                          "filled",
                          "hollow"
                        ]
                      },
                      "RelationshipDefinitionMetadataStyles": {
                        "type": "object",
                        "description": "Visualization styles for a relationship",
                        "required": [
                          "primaryColor",
                          "svgColor",
                          "svgWhite"
                        ],
                        "properties": {
                          "primaryColor": {
                            "type": "string",
                            "description": "Primary color of the component used for UI representation.",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "primaryColor",
                              "json": "primaryColor"
                            }
                          },
                          "secondaryColor": {
                            "type": "string",
                            "description": "Secondary color of the entity used for UI representation.",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "secondaryColor,omitempty",
                              "json": "secondaryColor,omitempty"
                            }
                          },
                          "svgWhite": {
                            "type": "string",
                            "description": "White SVG of the entity used for UI representation on dark background.",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "svgWhite",
                              "json": "svgWhite"
                            }
                          },
                          "svgColor": {
                            "type": "string",
                            "description": "Colored SVG of the entity used for UI representation on light background.",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "svgColor",
                              "json": "svgColor"
                            }
                          },
                          "svgComplete": {
                            "type": "string",
                            "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "svgComplete,omitempty",
                              "json": "svgComplete,omitempty"
                            }
                          },
                          "color": {
                            "type": "string",
                            "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "color,omitempty",
                              "json": "color,omitempty"
                            }
                          },
                          "text-opacity": {
                            "type": "number",
                            "format": "float",
                            "description": "The opacity of the label text, including its outline.",
                            "x-go-name": "TextOpacity",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "text-opacity,omitempty",
                              "json": "text-opacity,omitempty"
                            }
                          },
                          "font-family": {
                            "type": "string",
                            "description": "A comma-separated list of font names to use on the label text.",
                            "x-go-name": "FontFamily",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "font-family,omitempty",
                              "json": "font-family,omitempty"
                            }
                          },
                          "font-size": {
                            "type": "string",
                            "description": "The size of the label text.",
                            "x-go-name": "FontSize",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "font-size,omitempty",
                              "json": "font-size,omitempty"
                            }
                          },
                          "font-style": {
                            "type": "string",
                            "description": "A CSS font style to be applied to the label text.",
                            "x-go-name": "FontStyle",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "font-style,omitempty",
                              "json": "font-style,omitempty"
                            }
                          },
                          "font-weight": {
                            "type": "string",
                            "description": "A CSS font weight to be applied to the label text.",
                            "x-go-name": "FontWeight",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "font-weight,omitempty",
                              "json": "font-weight,omitempty"
                            }
                          },
                          "text-transform": {
                            "description": "A transformation to apply to the label text",
                            "x-go-name": "TextTransform",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "text-transform,omitempty",
                              "json": "text-transform,omitempty"
                            },
                            "type": "string",
                            "enum": [
                              "none",
                              "uppercase",
                              "lowercase"
                            ]
                          },
                          "opacity": {
                            "type": "number",
                            "format": "float",
                            "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.See https://js.cytoscape.org/#style/visibility",
                            "x-go-name": "Opacity",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "opacity,omitempty",
                              "json": "opacity,omitempty"
                            }
                          },
                          "z-index": {
                            "type": "integer",
                            "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.",
                            "x-go-name": "ZIndex",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "z-index,omitempty",
                              "json": "z-index,omitempty"
                            }
                          },
                          "label": {
                            "type": "string",
                            "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                            "x-go-name": "Label",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "label,omitempty",
                              "json": "label,omitempty"
                            }
                          },
                          "edge-animation": {
                            "type": "string",
                            "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                            "x-go-name": "EdgeAnimation",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "edge-animation,omitempty",
                              "json": "edge-animation,omitempty"
                            }
                          },
                          "curve-style": {
                            "x-go-name": "CurveStyle",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "curve-style,omitempty",
                              "json": "curve-style,omitempty"
                            },
                            "type": "string",
                            "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                            "enum": [
                              "haystack",
                              "straight",
                              "bezier",
                              "unbundled-bezier",
                              "segments",
                              "taxi"
                            ]
                          },
                          "line-color": {
                            "type": "string",
                            "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                            "x-go-name": "LineColor",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "line-color,omitempty",
                              "json": "line-color,omitempty"
                            }
                          },
                          "line-style": {
                            "x-go-name": "LineStyle",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "line-style,omitempty",
                              "json": "line-style,omitempty"
                            },
                            "type": "string",
                            "description": "The style of the edge's line.",
                            "enum": [
                              "solid",
                              "dotted",
                              "dashed"
                            ]
                          },
                          "line-cap": {
                            "x-go-name": "LineCap",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "line-cap,omitempty",
                              "json": "line-cap,omitempty"
                            },
                            "type": "string",
                            "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                            "enum": [
                              "butt",
                              "round",
                              "square"
                            ]
                          },
                          "line-opacity": {
                            "type": "number",
                            "format": "float",
                            "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                            "x-go-name": "LineOpacity",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "line-opacity,omitempty",
                              "json": "line-opacity,omitempty"
                            }
                          },
                          "target-arrow-color": {
                            "type": "string",
                            "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                            "x-go-name": "TargetArrowColor",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "target-arrow-color,omitempty",
                              "json": "target-arrow-color,omitempty"
                            }
                          },
                          "target-arrow-shape": {
                            "x-go-name": "TargetArrowShape",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "target-arrow-shape,omitempty",
                              "json": "target-arrow-shape,omitempty"
                            },
                            "type": "string",
                            "description": "The shape of the edge's source arrow",
                            "enum": [
                              "triangle",
                              "triangle-tee",
                              "circle-triangle",
                              "triangle-cross",
                              "triangle-backcurve",
                              "vee",
                              "tee",
                              "square",
                              "circle",
                              "diamond",
                              "chevron",
                              "none"
                            ]
                          },
                          "target-arrow-fill": {
                            "x-go-name": "TargetArrowFill",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "target-arrow-fill,omitempty",
                              "json": "target-arrow-fill,omitempty"
                            },
                            "type": "string",
                            "description": "The fill state of the edge's source arrow",
                            "enum": [
                              "filled",
                              "hollow"
                            ]
                          },
                          "mid-target-arrow-color": {
                            "type": "string",
                            "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                            "x-go-name": "MidTargetArrowColor",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mid-target-arrow-color,omitempty",
                              "json": "mid-target-arrow-color,omitempty"
                            }
                          },
                          "mid-target-arrow-shape": {
                            "x-go-name": "MidTargetArrowShape",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mid-target-arrow-shape,omitempty",
                              "json": "mid-target-arrow-shape,omitempty"
                            },
                            "type": "string",
                            "description": "The shape of the edge's source arrow",
                            "enum": [
                              "triangle",
                              "triangle-tee",
                              "circle-triangle",
                              "triangle-cross",
                              "triangle-backcurve",
                              "vee",
                              "tee",
                              "square",
                              "circle",
                              "diamond",
                              "chevron",
                              "none"
                            ]
                          },
                          "mid-target-arrow-fill": {
                            "x-go-name": "MidTargetArrowFill",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "mid-target-arrow-fill,omitempty",
                              "json": "mid-target-arrow-fill,omitempty"
                            },
                            "type": "string",
                            "description": "The fill state of the edge's source arrow",
                            "enum": [
                              "filled",
                              "hollow"
                            ]
                          },
                          "arrow-scale": {
                            "type": "number",
                            "format": "float",
                            "description": "Scaling for the arrow size.",
                            "x-go-name": "ArrowScale",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "arrow-scale,omitempty",
                              "json": "arrow-scale,omitempty"
                            }
                          },
                          "source-label": {
                            "type": "string",
                            "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                            "x-go-name": "SourceLabel",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "source-label,omitempty",
                              "json": "source-label,omitempty"
                            }
                          },
                          "target-label": {
                            "type": "string",
                            "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                            "x-go-name": "TargetLabel",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "target-label,omitempty",
                              "json": "target-label,omitempty"
                            }
                          }
                        }
                      },
                      "Relationship_Metadata": {
                        "type": "object",
                        "description": "Metadata contains additional information associated with the Relationship.",
                        "additionalProperties": true,
                        "x-oapi-codegen-extra-tags": {
                          "gorm": "type:bytes;serializer:json"
                        },
                        "properties": {
                          "description": {
                            "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                            "type": "string",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "description",
                              "json": "description"
                            }
                          },
                          "styles": {
                            "x-go-type": "RelationshipDefinitionMetadataStyles",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "styles",
                              "json": "styles"
                            },
                            "type": "object",
                            "description": "Visualization styles for a relationship",
                            "required": [
                              "primaryColor",
                              "svgColor",
                              "svgWhite"
                            ],
                            "properties": {
                              "primaryColor": {
                                "type": "string",
                                "description": "Primary color of the component used for UI representation.",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "primaryColor",
                                  "json": "primaryColor"
                                }
                              },
                              "secondaryColor": {
                                "type": "string",
                                "description": "Secondary color of the entity used for UI representation.",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "secondaryColor,omitempty",
                                  "json": "secondaryColor,omitempty"
                                }
                              },
                              "svgWhite": {
                                "type": "string",
                                "description": "White SVG of the entity used for UI representation on dark background.",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "svgWhite",
                                  "json": "svgWhite"
                                }
                              },
                              "svgColor": {
                                "type": "string",
                                "description": "Colored SVG of the entity used for UI representation on light background.",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "svgColor",
                                  "json": "svgColor"
                                }
                              },
                              "svgComplete": {
                                "type": "string",
                                "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "svgComplete,omitempty",
                                  "json": "svgComplete,omitempty"
                                }
                              },
                              "color": {
                                "type": "string",
                                "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "color,omitempty",
                                  "json": "color,omitempty"
                                }
                              },
                              "text-opacity": {
                                "type": "number",
                                "format": "float",
                                "description": "The opacity of the label text, including its outline.",
                                "x-go-name": "TextOpacity",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "text-opacity,omitempty",
                                  "json": "text-opacity,omitempty"
                                }
                              },
                              "font-family": {
                                "type": "string",
                                "description": "A comma-separated list of font names to use on the label text.",
                                "x-go-name": "FontFamily",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "font-family,omitempty",
                                  "json": "font-family,omitempty"
                                }
                              },
                              "font-size": {
                                "type": "string",
                                "description": "The size of the label text.",
                                "x-go-name": "FontSize",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "font-size,omitempty",
                                  "json": "font-size,omitempty"
                                }
                              },
                              "font-style": {
                                "type": "string",
                                "description": "A CSS font style to be applied to the label text.",
                                "x-go-name": "FontStyle",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "font-style,omitempty",
                                  "json": "font-style,omitempty"
                                }
                              },
                              "font-weight": {
                                "type": "string",
                                "description": "A CSS font weight to be applied to the label text.",
                                "x-go-name": "FontWeight",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "font-weight,omitempty",
                                  "json": "font-weight,omitempty"
                                }
                              },
                              "text-transform": {
                                "description": "A transformation to apply to the label text",
                                "x-go-name": "TextTransform",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "text-transform,omitempty",
                                  "json": "text-transform,omitempty"
                                },
                                "type": "string",
                                "enum": [
                                  "none",
                                  "uppercase",
                                  "lowercase"
                                ]
                              },
                              "opacity": {
                                "type": "number",
                                "format": "float",
                                "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.See https://js.cytoscape.org/#style/visibility",
                                "x-go-name": "Opacity",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "opacity,omitempty",
                                  "json": "opacity,omitempty"
                                }
                              },
                              "z-index": {
                                "type": "integer",
                                "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.",
                                "x-go-name": "ZIndex",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "z-index,omitempty",
                                  "json": "z-index,omitempty"
                                }
                              },
                              "label": {
                                "type": "string",
                                "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                "x-go-name": "Label",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "label,omitempty",
                                  "json": "label,omitempty"
                                }
                              },
                              "edge-animation": {
                                "type": "string",
                                "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                "x-go-name": "EdgeAnimation",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "edge-animation,omitempty",
                                  "json": "edge-animation,omitempty"
                                }
                              },
                              "curve-style": {
                                "x-go-name": "CurveStyle",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "curve-style,omitempty",
                                  "json": "curve-style,omitempty"
                                },
                                "type": "string",
                                "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                "enum": [
                                  "haystack",
                                  "straight",
                                  "bezier",
                                  "unbundled-bezier",
                                  "segments",
                                  "taxi"
                                ]
                              },
                              "line-color": {
                                "type": "string",
                                "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                "x-go-name": "LineColor",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "line-color,omitempty",
                                  "json": "line-color,omitempty"
                                }
                              },
                              "line-style": {
                                "x-go-name": "LineStyle",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "line-style,omitempty",
                                  "json": "line-style,omitempty"
                                },
                                "type": "string",
                                "description": "The style of the edge's line.",
                                "enum": [
                                  "solid",
                                  "dotted",
                                  "dashed"
                                ]
                              },
                              "line-cap": {
                                "x-go-name": "LineCap",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "line-cap,omitempty",
                                  "json": "line-cap,omitempty"
                                },
                                "type": "string",
                                "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                "enum": [
                                  "butt",
                                  "round",
                                  "square"
                                ]
                              },
                              "line-opacity": {
                                "type": "number",
                                "format": "float",
                                "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                "x-go-name": "LineOpacity",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "line-opacity,omitempty",
                                  "json": "line-opacity,omitempty"
                                }
                              },
                              "target-arrow-color": {
                                "type": "string",
                                "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                "x-go-name": "TargetArrowColor",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "target-arrow-color,omitempty",
                                  "json": "target-arrow-color,omitempty"
                                }
                              },
                              "target-arrow-shape": {
                                "x-go-name": "TargetArrowShape",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "target-arrow-shape,omitempty",
                                  "json": "target-arrow-shape,omitempty"
                                },
                                "type": "string",
                                "description": "The shape of the edge's source arrow",
                                "enum": [
                                  "triangle",
                                  "triangle-tee",
                                  "circle-triangle",
                                  "triangle-cross",
                                  "triangle-backcurve",
                                  "vee",
                                  "tee",
                                  "square",
                                  "circle",
                                  "diamond",
                                  "chevron",
                                  "none"
                                ]
                              },
                              "target-arrow-fill": {
                                "x-go-name": "TargetArrowFill",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "target-arrow-fill,omitempty",
                                  "json": "target-arrow-fill,omitempty"
                                },
                                "type": "string",
                                "description": "The fill state of the edge's source arrow",
                                "enum": [
                                  "filled",
                                  "hollow"
                                ]
                              },
                              "mid-target-arrow-color": {
                                "type": "string",
                                "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                "x-go-name": "MidTargetArrowColor",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "mid-target-arrow-color,omitempty",
                                  "json": "mid-target-arrow-color,omitempty"
                                }
                              },
                              "mid-target-arrow-shape": {
                                "x-go-name": "MidTargetArrowShape",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "mid-target-arrow-shape,omitempty",
                                  "json": "mid-target-arrow-shape,omitempty"
                                },
                                "type": "string",
                                "description": "The shape of the edge's source arrow",
                                "enum": [
                                  "triangle",
                                  "triangle-tee",
                                  "circle-triangle",
                                  "triangle-cross",
                                  "triangle-backcurve",
                                  "vee",
                                  "tee",
                                  "square",
                                  "circle",
                                  "diamond",
                                  "chevron",
                                  "none"
                                ]
                              },
                              "mid-target-arrow-fill": {
                                "x-go-name": "MidTargetArrowFill",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "mid-target-arrow-fill,omitempty",
                                  "json": "mid-target-arrow-fill,omitempty"
                                },
                                "type": "string",
                                "description": "The fill state of the edge's source arrow",
                                "enum": [
                                  "filled",
                                  "hollow"
                                ]
                              },
                              "arrow-scale": {
                                "type": "number",
                                "format": "float",
                                "description": "Scaling for the arrow size.",
                                "x-go-name": "ArrowScale",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "arrow-scale,omitempty",
                                  "json": "arrow-scale,omitempty"
                                }
                              },
                              "source-label": {
                                "type": "string",
                                "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                "x-go-name": "SourceLabel",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "source-label,omitempty",
                                  "json": "source-label,omitempty"
                                }
                              },
                              "target-label": {
                                "type": "string",
                                "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                "x-go-name": "TargetLabel",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "target-label,omitempty",
                                  "json": "target-label,omitempty"
                                }
                              }
                            }
                          },
                          "isAnnotation": {
                            "type": "boolean",
                            "description": "Indicates whether the relationship should be treated as a logical representation only",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "isAnnotation",
                              "json": "isAnnotation"
                            }
                          }
                        }
                      },
                      "RelationshipDefinition": {
                        "description": "Relationships define the nature of interaction between interconnected components in Meshery. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs.meshery.io/concepts/logical/relationships.",
                        "type": "object",
                        "required": [
                          "schemaVersion",
                          "version",
                          "model",
                          "kind",
                          "type",
                          "subType",
                          "id"
                        ],
                        "properties": {
                          "id": {
                            "description": "Uniquely identifies the entity",
                            "x-go-type-skip-optional-pointer": true,
                            "x-order": 1,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "id",
                              "json": "id"
                            },
                            "type": "string",
                            "format": "uuid",
                            "x-go-type": "uuid.UUID",
                            "x-go-type-import": {
                              "path": "github.com/gofrs/uuid"
                            }
                          },
                          "schemaVersion": {
                            "description": "Specifies the version of the schema used for the relationship definition.",
                            "x-order": 8,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "schemaVersion",
                              "json": "schemaVersion"
                            },
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 100,
                            "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                            "example": [
                              "v1",
                              "v1alpha1",
                              "v2beta3",
                              "v1.custom-suffix",
                              "models.meshery.io/v1beta1",
                              "capability.meshery.io/v1alpha1"
                            ]
                          },
                          "version": {
                            "description": "Specifies the version of the relationship definition.",
                            "x-order": 13,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "version",
                              "json": "version"
                            },
                            "type": "string",
                            "minLength": 5,
                            "maxLength": 100,
                            "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                          },
                          "kind": {
                            "description": "Kind of the Relationship. Learn more about relationships - https://docs.meshery.io/concepts/logical/relationships.",
                            "type": "string",
                            "enum": [
                              "hierarchical",
                              "edge",
                              "sibling"
                            ],
                            "x-order": 4,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "kind",
                              "json": "kind"
                            }
                          },
                          "type": {
                            "description": "Classification of relationships. Used to group relationships similar in nature.",
                            "type": "string",
                            "x-go-name": "RelationshipType",
                            "x-go-type-skip-optional-pointer": true,
                            "x-order": 12,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "type",
                              "json": "type",
                              "gorm": "column:type"
                            }
                          },
                          "subType": {
                            "description": "Most granular unit of relationship classification. The combination of Kind, Type and SubType together uniquely identify a Relationship.",
                            "type": "string",
                            "x-go-type-skip-optional-pointer": true,
                            "x-order": 10,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "subType",
                              "json": "subType"
                            }
                          },
                          "status": {
                            "type": "string",
                            "description": "Status of the relationship.",
                            "enum": [
                              "enabled",
                              "ignored",
                              "deleted",
                              "approved",
                              "pending"
                            ],
                            "x-order": 11,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "status",
                              "json": "status"
                            }
                          },
                          "capabilities": {
                            "type": "array",
                            "description": "Capabilities associated with the relationship.",
                            "x-order": 2,
                            "items": {
                              "x-go-type": "capabilityv1alpha1.Capability",
                              "x-go-type-import": {
                                "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                                "name": "capabilityv1alpha1"
                              },
                              "$id": "https://schemas.meshery.io/capability.yaml",
                              "$schema": "http://json-schema.org/draft-07/schema#",
                              "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                              "additionalProperties": false,
                              "type": "object",
                              "required": [
                                "description",
                                "schemaVersion",
                                "version",
                                "displayName",
                                "kind",
                                "type",
                                "subType",
                                "entityState",
                                "key",
                                "status"
                              ],
                              "x-oapi-codegen-extra-tags": {
                                "gorm": "type:bytes;serializer:json"
                              },
                              "properties": {
                                "schemaVersion": {
                                  "description": "Specifies the version of the schema to which the capability definition conforms.",
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 100,
                                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                  "example": [
                                    "v1",
                                    "v1alpha1",
                                    "v2beta3",
                                    "v1.custom-suffix",
                                    "models.meshery.io/v1beta1",
                                    "capability.meshery.io/v1alpha1"
                                  ]
                                },
                                "version": {
                                  "description": "Version of the capability definition.",
                                  "type": "string",
                                  "minLength": 5,
                                  "maxLength": 100,
                                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                },
                                "displayName": {
                                  "description": "Name of the capability in human-readible format.",
                                  "type": "string",
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                },
                                "description": {
                                  "type": "string",
                                  "description": "A written representation of the purpose and characteristics of the capability."
                                },
                                "kind": {
                                  "description": "Top-level categorization of the capability",
                                  "additionalProperties": false,
                                  "anyOf": [
                                    {
                                      "const": "action",
                                      "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                    },
                                    {
                                      "const": "mutate",
                                      "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                    },
                                    {
                                      "const": "view",
                                      "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                    },
                                    {
                                      "const": "interaction",
                                      "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                    }
                                  ],
                                  "type": "string",
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                },
                                "type": {
                                  "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                  "type": "string",
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                },
                                "subType": {
                                  "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                  "type": "string",
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                },
                                "key": {
                                  "description": "Key that backs the capability.",
                                  "type": "string",
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                                },
                                "entityState": {
                                  "description": "State of the entity in which the capability is applicable.",
                                  "type": "array",
                                  "items": {
                                    "type": "string",
                                    "enum": [
                                      "declaration",
                                      "instance"
                                    ],
                                    "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                    "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                  }
                                },
                                "status": {
                                  "type": "string",
                                  "description": "Status of the capability",
                                  "default": "enabled",
                                  "enum": [
                                    "enabled",
                                    "disabled"
                                  ]
                                },
                                "metadata": {
                                  "type": "object",
                                  "description": "Metadata contains additional information associated with the capability. Extension point.",
                                  "additionalProperties": true
                                }
                              },
                              "default": [
                                {
                                  "description": "Configure the visual styles for the component",
                                  "displayName": "Styling",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "key": "",
                                  "kind": "mutate",
                                  "schemaVersion": "capability.meshery.io/v1alpha1",
                                  "status": "enabled",
                                  "subType": "",
                                  "type": "style",
                                  "version": "0.7.0"
                                },
                                {
                                  "description": "Change the shape of the component",
                                  "displayName": "Change Shape",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "key": "",
                                  "kind": "mutate",
                                  "schemaVersion": "capability.meshery.io/v1alpha1",
                                  "status": "enabled",
                                  "subType": "shape",
                                  "type": "style",
                                  "version": "0.7.0"
                                },
                                {
                                  "description": "Drag and Drop a component into a parent component in graph view",
                                  "displayName": "Compound Drag And Drop",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "key": "",
                                  "kind": "interaction",
                                  "schemaVersion": "capability.meshery.io/v1alpha1",
                                  "status": "enabled",
                                  "subType": "compoundDnd",
                                  "type": "graph",
                                  "version": "0.7.0"
                                },
                                {
                                  "description": "Add text to nodes body",
                                  "displayName": "Body Text",
                                  "entityState": [
                                    "declaration"
                                  ],
                                  "key": "",
                                  "kind": "mutate",
                                  "schemaVersion": "capability.meshery.io/v1alpha1",
                                  "status": "enabled",
                                  "subType": "body-text",
                                  "type": "style",
                                  "version": "0.7.0"
                                }
                              ]
                            },
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "capabilities",
                              "json": "capabilities,omitempty",
                              "gorm": "type:bytes;serializer:json"
                            }
                          },
                          "metadata": {
                            "x-go-type": "Relationship_Metadata",
                            "x-order": 5,
                            "x-oapi-codegen-extra-tags": {
                              "gorm": "type:bytes;serializer:json",
                              "yaml": "metadata",
                              "json": "metadata,omitempty"
                            },
                            "type": "object",
                            "description": "Metadata contains additional information associated with the Relationship.",
                            "additionalProperties": true,
                            "properties": {
                              "description": {
                                "description": "Characterization of the meaning of the relationship and its relevance to both Meshery and entities under management.",
                                "type": "string",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "description",
                                  "json": "description"
                                }
                              },
                              "styles": {
                                "x-go-type": "RelationshipDefinitionMetadataStyles",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "styles",
                                  "json": "styles"
                                },
                                "type": "object",
                                "description": "Visualization styles for a relationship",
                                "required": [
                                  "primaryColor",
                                  "svgColor",
                                  "svgWhite"
                                ],
                                "properties": {
                                  "primaryColor": {
                                    "type": "string",
                                    "description": "Primary color of the component used for UI representation.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "primaryColor",
                                      "json": "primaryColor"
                                    }
                                  },
                                  "secondaryColor": {
                                    "type": "string",
                                    "description": "Secondary color of the entity used for UI representation.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "secondaryColor,omitempty",
                                      "json": "secondaryColor,omitempty"
                                    }
                                  },
                                  "svgWhite": {
                                    "type": "string",
                                    "description": "White SVG of the entity used for UI representation on dark background.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "svgWhite",
                                      "json": "svgWhite"
                                    }
                                  },
                                  "svgColor": {
                                    "type": "string",
                                    "description": "Colored SVG of the entity used for UI representation on light background.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "svgColor",
                                      "json": "svgColor"
                                    }
                                  },
                                  "svgComplete": {
                                    "type": "string",
                                    "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "svgComplete,omitempty",
                                      "json": "svgComplete,omitempty"
                                    }
                                  },
                                  "color": {
                                    "type": "string",
                                    "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "color,omitempty",
                                      "json": "color,omitempty"
                                    }
                                  },
                                  "text-opacity": {
                                    "type": "number",
                                    "format": "float",
                                    "description": "The opacity of the label text, including its outline.",
                                    "x-go-name": "TextOpacity",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "text-opacity,omitempty",
                                      "json": "text-opacity,omitempty"
                                    }
                                  },
                                  "font-family": {
                                    "type": "string",
                                    "description": "A comma-separated list of font names to use on the label text.",
                                    "x-go-name": "FontFamily",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "font-family,omitempty",
                                      "json": "font-family,omitempty"
                                    }
                                  },
                                  "font-size": {
                                    "type": "string",
                                    "description": "The size of the label text.",
                                    "x-go-name": "FontSize",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "font-size,omitempty",
                                      "json": "font-size,omitempty"
                                    }
                                  },
                                  "font-style": {
                                    "type": "string",
                                    "description": "A CSS font style to be applied to the label text.",
                                    "x-go-name": "FontStyle",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "font-style,omitempty",
                                      "json": "font-style,omitempty"
                                    }
                                  },
                                  "font-weight": {
                                    "type": "string",
                                    "description": "A CSS font weight to be applied to the label text.",
                                    "x-go-name": "FontWeight",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "font-weight,omitempty",
                                      "json": "font-weight,omitempty"
                                    }
                                  },
                                  "text-transform": {
                                    "description": "A transformation to apply to the label text",
                                    "x-go-name": "TextTransform",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "text-transform,omitempty",
                                      "json": "text-transform,omitempty"
                                    },
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "uppercase",
                                      "lowercase"
                                    ]
                                  },
                                  "opacity": {
                                    "type": "number",
                                    "format": "float",
                                    "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.See https://js.cytoscape.org/#style/visibility",
                                    "x-go-name": "Opacity",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "opacity,omitempty",
                                      "json": "opacity,omitempty"
                                    }
                                  },
                                  "z-index": {
                                    "type": "integer",
                                    "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.",
                                    "x-go-name": "ZIndex",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "z-index,omitempty",
                                      "json": "z-index,omitempty"
                                    }
                                  },
                                  "label": {
                                    "type": "string",
                                    "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                                    "x-go-name": "Label",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "label,omitempty",
                                      "json": "label,omitempty"
                                    }
                                  },
                                  "edge-animation": {
                                    "type": "string",
                                    "description": "The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc .",
                                    "x-go-name": "EdgeAnimation",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "edge-animation,omitempty",
                                      "json": "edge-animation,omitempty"
                                    }
                                  },
                                  "curve-style": {
                                    "x-go-name": "CurveStyle",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "curve-style,omitempty",
                                      "json": "curve-style,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.",
                                    "enum": [
                                      "haystack",
                                      "straight",
                                      "bezier",
                                      "unbundled-bezier",
                                      "segments",
                                      "taxi"
                                    ]
                                  },
                                  "line-color": {
                                    "type": "string",
                                    "description": "The colour of the edge's line. Colours may be specified by name (e.g. red), hex (e.g.",
                                    "x-go-name": "LineColor",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "line-color,omitempty",
                                      "json": "line-color,omitempty"
                                    }
                                  },
                                  "line-style": {
                                    "x-go-name": "LineStyle",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "line-style,omitempty",
                                      "json": "line-style,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The style of the edge's line.",
                                    "enum": [
                                      "solid",
                                      "dotted",
                                      "dashed"
                                    ]
                                  },
                                  "line-cap": {
                                    "x-go-name": "LineCap",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "line-cap,omitempty",
                                      "json": "line-cap,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The cap style of the edge's line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.",
                                    "enum": [
                                      "butt",
                                      "round",
                                      "square"
                                    ]
                                  },
                                  "line-opacity": {
                                    "type": "number",
                                    "format": "float",
                                    "description": "The opacity of the edge's line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents.",
                                    "x-go-name": "LineOpacity",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "line-opacity,omitempty",
                                      "json": "line-opacity,omitempty"
                                    }
                                  },
                                  "target-arrow-color": {
                                    "type": "string",
                                    "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                    "x-go-name": "TargetArrowColor",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "target-arrow-color,omitempty",
                                      "json": "target-arrow-color,omitempty"
                                    }
                                  },
                                  "target-arrow-shape": {
                                    "x-go-name": "TargetArrowShape",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "target-arrow-shape,omitempty",
                                      "json": "target-arrow-shape,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The shape of the edge's source arrow",
                                    "enum": [
                                      "triangle",
                                      "triangle-tee",
                                      "circle-triangle",
                                      "triangle-cross",
                                      "triangle-backcurve",
                                      "vee",
                                      "tee",
                                      "square",
                                      "circle",
                                      "diamond",
                                      "chevron",
                                      "none"
                                    ]
                                  },
                                  "target-arrow-fill": {
                                    "x-go-name": "TargetArrowFill",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "target-arrow-fill,omitempty",
                                      "json": "target-arrow-fill,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The fill state of the edge's source arrow",
                                    "enum": [
                                      "filled",
                                      "hollow"
                                    ]
                                  },
                                  "mid-target-arrow-color": {
                                    "type": "string",
                                    "description": "The colour of the edge's source arrow. Colours may be specified by name (e.g. red), hex (e.g.",
                                    "x-go-name": "MidTargetArrowColor",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "mid-target-arrow-color,omitempty",
                                      "json": "mid-target-arrow-color,omitempty"
                                    }
                                  },
                                  "mid-target-arrow-shape": {
                                    "x-go-name": "MidTargetArrowShape",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "mid-target-arrow-shape,omitempty",
                                      "json": "mid-target-arrow-shape,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The shape of the edge's source arrow",
                                    "enum": [
                                      "triangle",
                                      "triangle-tee",
                                      "circle-triangle",
                                      "triangle-cross",
                                      "triangle-backcurve",
                                      "vee",
                                      "tee",
                                      "square",
                                      "circle",
                                      "diamond",
                                      "chevron",
                                      "none"
                                    ]
                                  },
                                  "mid-target-arrow-fill": {
                                    "x-go-name": "MidTargetArrowFill",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "mid-target-arrow-fill,omitempty",
                                      "json": "mid-target-arrow-fill,omitempty"
                                    },
                                    "type": "string",
                                    "description": "The fill state of the edge's source arrow",
                                    "enum": [
                                      "filled",
                                      "hollow"
                                    ]
                                  },
                                  "arrow-scale": {
                                    "type": "number",
                                    "format": "float",
                                    "description": "Scaling for the arrow size.",
                                    "x-go-name": "ArrowScale",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "arrow-scale,omitempty",
                                      "json": "arrow-scale,omitempty"
                                    }
                                  },
                                  "source-label": {
                                    "type": "string",
                                    "description": "The text to display for an edge's source label. Can give a path, e.g. data(id) will label with the elements id",
                                    "x-go-name": "SourceLabel",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "source-label,omitempty",
                                      "json": "source-label,omitempty"
                                    }
                                  },
                                  "target-label": {
                                    "type": "string",
                                    "description": "The text to display for an edge's target label. Can give a path, e.g. data(id) will label with the elements id",
                                    "x-go-name": "TargetLabel",
                                    "x-oapi-codegen-extra-tags": {
                                      "yaml": "target-label,omitempty",
                                      "json": "target-label,omitempty"
                                    }
                                  }
                                }
                              },
                              "isAnnotation": {
                                "type": "boolean",
                                "description": "Indicates whether the relationship should be treated as a logical representation only",
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "isAnnotation",
                                  "json": "isAnnotation"
                                }
                              }
                            }
                          },
                          "model": {
                            "x-go-type": "modelv1beta1.ModelReference",
                            "x-go-type-import": {
                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                              "name": "modelv1beta1"
                            },
                            "x-go-type-skip-optional-pointer": true,
                            "x-order": 6,
                            "description": "Model 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",
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "model",
                              "json": "model",
                              "gorm": "type:bytes;serializer:json"
                            },
                            "x-generate-db-helpers": true,
                            "type": "object",
                            "required": [
                              "id",
                              "name",
                              "version",
                              "displayName",
                              "model",
                              "registrant"
                            ],
                            "properties": {
                              "id": {
                                "type": "string",
                                "format": "uuid",
                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "name": {
                                "type": "string",
                                "description": "The unique name for the model within the scope of a registrant.",
                                "pattern": "^[a-z0-9-]+$",
                                "examples": [
                                  "cert-manager"
                                ]
                              },
                              "version": {
                                "description": "Version of the model definition.",
                                "type": "string",
                                "minLength": 5,
                                "maxLength": 100,
                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                              },
                              "displayName": {
                                "type": "string",
                                "description": "Human-readable name for the model.",
                                "minLength": 1,
                                "maxLength": 100,
                                "pattern": "^[a-zA-Z0-9 ]+$",
                                "examples": [
                                  "Cert Manager"
                                ]
                              },
                              "model": {
                                "type": "object",
                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                "required": [
                                  "version"
                                ],
                                "properties": {
                                  "version": {
                                    "description": "Version of the model as defined by the registrant.",
                                    "x-oapi-codegen-extra-tags": {
                                      "json": "version"
                                    },
                                    "x-order": 1,
                                    "type": "string",
                                    "minLength": 5,
                                    "maxLength": 100,
                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                  }
                                }
                              },
                              "registrant": {
                                "x-go-type": "RegistrantReference",
                                "x-oapi-codegen-extra-tags": {
                                  "json": "registrant"
                                },
                                "type": "object",
                                "required": [
                                  "kind"
                                ],
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "description": "Kind of the registrant.",
                                    "maxLength": 255
                                  }
                                }
                              }
                            }
                          },
                          "modelId": {
                            "x-go-type-skip-optional-pointer": true,
                            "x-go-name": "ModelId",
                            "x-order": 7,
                            "description": "Foreign key reference to the model",
                            "x-oapi-codegen-extra-tags": {
                              "json": "-",
                              "gorm": "index:idx_relationship_definition_dbs_model_id,column:model_id"
                            },
                            "type": "string",
                            "format": "uuid",
                            "x-go-type": "uuid.UUID",
                            "x-go-type-import": {
                              "path": "github.com/gofrs/uuid"
                            }
                          },
                          "evaluationQuery": {
                            "description": "Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs.",
                            "type": "string",
                            "x-order": 3,
                            "x-oapi-codegen-extra-tags": {
                              "yaml": "evaluationQuery",
                              "json": "evaluationQuery"
                            }
                          },
                          "selectors": {
                            "x-go-type": "SelectorSet",
                            "x-order": 9,
                            "x-oapi-codegen-extra-tags": {
                              "gorm": "type:bytes;serializer:json",
                              "yaml": "selectors,omitempty",
                              "json": "selectors,omitempty"
                            },
                            "type": "array",
                            "description": "Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved.",
                            "items": {
                              "x-go-type": "SelectorSetItem",
                              "type": "object",
                              "description": "Optional selectors used to match Components. Absence of a selector means that it is applied to all Components.",
                              "required": [
                                "allow"
                              ],
                              "properties": {
                                "allow": {
                                  "description": "Selectors used to define relationships which are allowed.",
                                  "x-go-type": "Selector",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "allow",
                                    "json": "allow"
                                  },
                                  "type": "object",
                                  "required": [
                                    "from",
                                    "to"
                                  ],
                                  "properties": {
                                    "from": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from",
                                        "json": "from"
                                      }
                                    },
                                    "to": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to",
                                        "json": "to"
                                      }
                                    }
                                  }
                                },
                                "deny": {
                                  "description": "Optional selectors used to define relationships which should not be created / is restricted.",
                                  "x-go-type": "Selector",
                                  "x-oapi-codegen-extra-tags": {
                                    "yaml": "deny,omitempty",
                                    "json": "deny,omitempty"
                                  },
                                  "type": "object",
                                  "required": [
                                    "from",
                                    "to"
                                  ],
                                  "properties": {
                                    "from": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "from",
                                        "json": "from"
                                      }
                                    },
                                    "to": {
                                      "description": "Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match.",
                                      "type": "array",
                                      "items": {
                                        "x-go-type": "SelectorItem",
                                        "type": "object",
                                        "description": "Optional fields that are a part of the selector. Absence of a field has an implied * meaning.",
                                        "properties": {
                                          "id": {
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "id",
                                              "json": "id"
                                            },
                                            "type": "string",
                                            "format": "uuid",
                                            "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                            "x-go-type": "uuid.UUID",
                                            "x-go-type-import": {
                                              "path": "github.com/gofrs/uuid"
                                            }
                                          },
                                          "kind": {
                                            "type": "string",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "kind",
                                              "json": "kind"
                                            }
                                          },
                                          "match": {
                                            "x-go-type": "MatchSelector",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match,omitempty",
                                              "json": "match,omitempty"
                                            },
                                            "type": "object",
                                            "description": "Match configuration for selector",
                                            "properties": {
                                              "refs": {
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "refs,omitempty",
                                                  "json": "refs,omitempty"
                                                }
                                              },
                                              "from": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "from,omitempty",
                                                  "json": "from,omitempty"
                                                }
                                              },
                                              "to": {
                                                "type": "array",
                                                "items": {
                                                  "x-go-type": "MatchSelectorItem",
                                                  "type": "object",
                                                  "description": "Match selector item for binding between nodes",
                                                  "required": [
                                                    "kind"
                                                  ],
                                                  "properties": {
                                                    "id": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "id",
                                                        "json": "id"
                                                      },
                                                      "type": "string",
                                                      "format": "uuid",
                                                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                      "x-go-type": "uuid.UUID",
                                                      "x-go-type-import": {
                                                        "path": "github.com/gofrs/uuid"
                                                      }
                                                    },
                                                    "kind": {
                                                      "type": "string",
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "kind",
                                                        "json": "kind"
                                                      }
                                                    },
                                                    "mutatorRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatorRef,omitempty",
                                                        "json": "mutatorRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "description": "JSON ref to value from where patch should be applied.",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                      }
                                                    },
                                                    "mutatedRef": {
                                                      "x-oapi-codegen-extra-tags": {
                                                        "yaml": "mutatedRef,omitempty",
                                                        "json": "mutatedRef,omitempty"
                                                      },
                                                      "type": "array",
                                                      "items": {
                                                        "type": "array",
                                                        "items": {
                                                          "type": "string"
                                                        },
                                                        "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                      }
                                                    }
                                                  }
                                                },
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "to,omitempty",
                                                  "json": "to,omitempty"
                                                }
                                              }
                                            }
                                          },
                                          "match_strategy_matrix": {
                                            "description": "Match strategy matrix for the selector",
                                            "type": "array",
                                            "items": {
                                              "type": "array",
                                              "items": {
                                                "type": "string"
                                              }
                                            },
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "match_strategy_matrix",
                                              "json": "match_strategy_matrix"
                                            }
                                          },
                                          "model": {
                                            "x-go-type": "modelv1beta1.ModelReference",
                                            "x-go-type-import": {
                                              "path": "github.com/meshery/schemas/models/v1beta1/model",
                                              "name": "modelv1beta1"
                                            },
                                            "description": "Name of the model implicated by this selector. Learn more at https://docs.meshery.io/concepts/models",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "model",
                                              "json": "model,omitempty"
                                            },
                                            "x-generate-db-helpers": true,
                                            "type": "object",
                                            "required": [
                                              "id",
                                              "name",
                                              "version",
                                              "displayName",
                                              "model",
                                              "registrant"
                                            ],
                                            "properties": {
                                              "id": {
                                                "type": "string",
                                                "format": "uuid",
                                                "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                                                "x-go-type": "uuid.UUID",
                                                "x-go-type-import": {
                                                  "path": "github.com/gofrs/uuid"
                                                }
                                              },
                                              "name": {
                                                "type": "string",
                                                "description": "The unique name for the model within the scope of a registrant.",
                                                "pattern": "^[a-z0-9-]+$",
                                                "examples": [
                                                  "cert-manager"
                                                ]
                                              },
                                              "version": {
                                                "description": "Version of the model definition.",
                                                "type": "string",
                                                "minLength": 5,
                                                "maxLength": 100,
                                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                              },
                                              "displayName": {
                                                "type": "string",
                                                "description": "Human-readable name for the model.",
                                                "minLength": 1,
                                                "maxLength": 100,
                                                "pattern": "^[a-zA-Z0-9 ]+$",
                                                "examples": [
                                                  "Cert Manager"
                                                ]
                                              },
                                              "model": {
                                                "type": "object",
                                                "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                                                "required": [
                                                  "version"
                                                ],
                                                "properties": {
                                                  "version": {
                                                    "description": "Version of the model as defined by the registrant.",
                                                    "x-oapi-codegen-extra-tags": {
                                                      "json": "version"
                                                    },
                                                    "x-order": 1,
                                                    "type": "string",
                                                    "minLength": 5,
                                                    "maxLength": 100,
                                                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                                                  }
                                                }
                                              },
                                              "registrant": {
                                                "x-go-type": "RegistrantReference",
                                                "x-oapi-codegen-extra-tags": {
                                                  "json": "registrant"
                                                },
                                                "type": "object",
                                                "required": [
                                                  "kind"
                                                ],
                                                "properties": {
                                                  "kind": {
                                                    "type": "string",
                                                    "description": "Kind of the registrant.",
                                                    "maxLength": 255
                                                  }
                                                }
                                              }
                                            }
                                          },
                                          "patch": {
                                            "x-go-type": "RelationshipDefinition_Selectors_Patch",
                                            "x-oapi-codegen-extra-tags": {
                                              "yaml": "patch",
                                              "json": "patch"
                                            },
                                            "type": "object",
                                            "description": "Patch configuration for the selector",
                                            "properties": {
                                              "patchStrategy": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "patchStrategy,omitempty",
                                                  "json": "patchStrategy,omitempty"
                                                },
                                                "type": "string",
                                                "description": "patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).\n\nadd: Inserts a value into an array or adds a member to an object.\nreplace: Replaces a value.\nmerge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created.\nstrategic: specific to Kubernetes and understands the structure of Kubernetes objects.\nremove: Removes a value.\ncopy: Copies a value from one location to another.\nmove: Moves a value from one location to another.\ntest: Tests that a value at the target location is equal to a specified value.\n",
                                                "enum": [
                                                  "merge",
                                                  "strategic",
                                                  "add",
                                                  "remove",
                                                  "copy",
                                                  "move",
                                                  "test"
                                                ]
                                              },
                                              "mutatorRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatorRef,omitempty",
                                                  "json": "mutatorRef,omitempty"
                                                },
                                                "type": "array",
                                                "description": "JSON ref to value from where patch should be applied.",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "The sequence of mutatorRef and mutatedRef must match. eg: mutatorRef: [[config, url], [config, name]], mutatedRef: [[configPatch, value], [name]]. The value [config, url] will be patched at [configPatch, value]. Similarly [config,name] will be patched at [name]."
                                                }
                                              },
                                              "mutatedRef": {
                                                "x-oapi-codegen-extra-tags": {
                                                  "yaml": "mutatedRef,omitempty",
                                                  "json": "mutatedRef,omitempty"
                                                },
                                                "type": "array",
                                                "items": {
                                                  "type": "array",
                                                  "items": {
                                                    "type": "string"
                                                  },
                                                  "description": "JSONPath (https://en.wikipedia.org/wiki/JSONPath) to property to be patched."
                                                }
                                              }
                                            }
                                          }
                                        }
                                      },
                                      "x-oapi-codegen-extra-tags": {
                                        "yaml": "to",
                                        "json": "to"
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "description": "The relationships matching the query."
              }
            }
          }
        ]
      },
      "RegistryCategoriesPage": {
        "description": "A page of registry categories.",
        "allOf": [
          {
            "type": "object",
            "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
            "properties": {
              "page": {
                "type": "integer",
                "description": "Current page number of the result set.",
                "minimum": 0
              },
              "pageSize": {
                "type": "integer",
                "description": "Number of items in the page.",
                "minimum": 0
              },
              "totalCount": {
                "type": "integer",
                "description": "Total number of items available.",
                "minimum": 0
              },
              "page_size": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `pageSize`.",
                "minimum": 0,
                "deprecated": true
              },
              "total_count": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `totalCount`.",
                "minimum": 0,
                "deprecated": true
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "categories": {
                "type": "array",
                "items": {
                  "$id": "https://schemas.meshery.io/category.yaml",
                  "$schema": "http://json-schema.org/draft-07/schema#",
                  "type": "object",
                  "additionalProperties": false,
                  "description": "Category of the model.",
                  "required": [
                    "id",
                    "name",
                    "metadata"
                  ],
                  "properties": {
                    "id": {
                      "x-order": 1,
                      "type": "string",
                      "format": "uuid",
                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "name",
                        "json": "name",
                        "gorm": "name"
                      },
                      "default": "Uncategorized",
                      "description": "The category of the model that determines the main grouping.",
                      "helperText": "Select a model category",
                      "enum": [
                        "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"
                      ],
                      "x-order": 2
                    },
                    "metadata": {
                      "description": "Additional metadata associated with the category.",
                      "type": "object",
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "metadata,omitempty",
                        "json": "metadata,omitempty",
                        "gorm": "type:bytes;serializer:json"
                      },
                      "x-order": 3
                    }
                  }
                },
                "description": "The categories matching the query."
              }
            }
          }
        ]
      },
      "RegistryPoliciesPage": {
        "description": "A page of registered policies.",
        "allOf": [
          {
            "type": "object",
            "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
            "properties": {
              "page": {
                "type": "integer",
                "description": "Current page number of the result set.",
                "minimum": 0
              },
              "pageSize": {
                "type": "integer",
                "description": "Number of items in the page.",
                "minimum": 0
              },
              "totalCount": {
                "type": "integer",
                "description": "Total number of items available.",
                "minimum": 0
              },
              "page_size": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `pageSize`.",
                "minimum": 0,
                "deprecated": true
              },
              "total_count": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `totalCount`.",
                "minimum": 0,
                "deprecated": true
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "policies": {
                "type": "array",
                "items": {
                  "type": "object",
                  "description": "A registered policy definition.",
                  "additionalProperties": true
                },
                "description": "The policies matching the query."
              }
            }
          }
        ]
      },
      "RegistryRegistrant": {
        "description": "A registrant (host) that has registered capabilities into the registry, with a summary of the entities it has registered.",
        "allOf": [
          {
            "$id": "https://schemas.meshery.io/connection.yaml",
            "$schema": "http://json-schema.org/draft-07/schema#",
            "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",
            "additionalProperties": false,
            "type": "object",
            "required": [
              "id",
              "schemaVersion",
              "name",
              "type",
              "subType",
              "kind",
              "status"
            ],
            "properties": {
              "id": {
                "description": "Connection ID",
                "x-order": 1,
                "x-go-name": "ID",
                "x-oapi-codegen-extra-tags": {
                  "db": "id",
                  "yaml": "id"
                },
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "name": {
                "x-oapi-codegen-extra-tags": {
                  "db": "name",
                  "yaml": "name"
                },
                "x-order": 2,
                "type": "string",
                "description": "Connection Name"
              },
              "credentialId": {
                "x-go-name": "CredentialID",
                "x-oapi-codegen-extra-tags": {
                  "db": "credential_id",
                  "yaml": "credentialId"
                },
                "x-order": 3,
                "description": "Associated Credential ID",
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "type": {
                "x-oapi-codegen-extra-tags": {
                  "db": "type",
                  "yaml": "type"
                },
                "x-order": 4,
                "type": "string",
                "description": "Connection Type (platform, telemetry, collaboration)"
              },
              "subType": {
                "x-oapi-codegen-extra-tags": {
                  "db": "sub_type",
                  "yaml": "subType"
                },
                "x-order": 5,
                "type": "string",
                "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
              },
              "kind": {
                "x-oapi-codegen-extra-tags": {
                  "db": "kind",
                  "yaml": "kind"
                },
                "x-order": 6,
                "type": "string",
                "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
              },
              "metadata": {
                "x-oapi-codegen-extra-tags": {
                  "db": "metadata",
                  "yaml": "metadata"
                },
                "x-order": 7,
                "x-go-type": "core.Map",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/core"
                },
                "x-go-type-skip-optional-pointer": true,
                "type": "object",
                "description": "Additional connection metadata"
              },
              "status": {
                "x-oapi-codegen-extra-tags": {
                  "db": "status",
                  "yaml": "status"
                },
                "x-order": 8,
                "description": "Connection Status",
                "type": "string",
                "enum": [
                  "discovered",
                  "registered",
                  "connected",
                  "ignored",
                  "maintenance",
                  "disconnected",
                  "deleted",
                  "not found"
                ]
              },
              "user_id": {
                "x-go-name": "UserID",
                "x-oapi-codegen-extra-tags": {
                  "db": "owner",
                  "yaml": "user_id"
                },
                "x-order": 9,
                "description": "User ID who owns this connection",
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "created_at": {
                "x-oapi-codegen-extra-tags": {
                  "db": "created_at",
                  "yaml": "created_at"
                },
                "x-order": 10,
                "type": "string",
                "format": "date-time",
                "x-go-type-skip-optional-pointer": true
              },
              "updated_at": {
                "x-oapi-codegen-extra-tags": {
                  "db": "updated_at",
                  "yaml": "updated_at"
                },
                "x-order": 11,
                "type": "string",
                "format": "date-time",
                "x-go-type-skip-optional-pointer": true
              },
              "deleted_at": {
                "x-oapi-codegen-extra-tags": {
                  "db": "deleted_at",
                  "yaml": "deleted_at"
                },
                "x-order": 12,
                "description": "SQL null Timestamp to handle null values of time.",
                "x-go-type": "meshcore.NullTime",
                "x-go-type-import": {
                  "name": "meshcore",
                  "path": "github.com/meshery/schemas/models/core"
                },
                "type": "string",
                "format": "date-time",
                "x-go-type-skip-optional-pointer": true
              },
              "environments": {
                "type": "array",
                "description": "Associated environments for this connection",
                "items": {
                  "x-go-type": "*environmentv1beta1.Environment",
                  "x-go-type-import": {
                    "path": "github.com/meshery/schemas/models/v1beta1/environment",
                    "name": "environmentv1beta1"
                  },
                  "$id": "https://schemas.meshery.io/environment.yaml",
                  "$schema": "http://json-schema.org/draft-07/schema#",
                  "title": "Environment",
                  "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                  "additionalProperties": false,
                  "type": "object",
                  "example": {
                    "id": "00000000-0000-0000-0000-000000000000",
                    "schemaVersion": "environments.meshery.io/v1beta1",
                    "name": "Production Environment",
                    "description": "Connections and credentials for the production cluster.",
                    "organization_id": "00000000-0000-0000-0000-000000000000",
                    "owner": "00000000-0000-0000-0000-000000000000",
                    "created_at": "0001-01-01T00:00:00Z",
                    "metadata": {},
                    "updated_at": "0001-01-01T00:00:00Z",
                    "deleted_at": null
                  },
                  "required": [
                    "id",
                    "schemaVersion",
                    "name",
                    "description",
                    "organization_id"
                  ],
                  "properties": {
                    "id": {
                      "description": "ID",
                      "x-order": 1,
                      "x-go-name": "ID",
                      "x-oapi-codegen-extra-tags": {
                        "db": "id",
                        "yaml": "id"
                      },
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "schemaVersion": {
                      "description": "Specifies the version of the schema to which the environment conforms.",
                      "x-order": 2,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "schemaVersion",
                        "db": "-",
                        "gorm": "-"
                      },
                      "default": "environments.meshery.io/v1beta1",
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 100,
                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                      "example": [
                        "v1",
                        "v1alpha1",
                        "v2beta3",
                        "v1.custom-suffix",
                        "models.meshery.io/v1beta1",
                        "capability.meshery.io/v1alpha1"
                      ]
                    },
                    "name": {
                      "x-oapi-codegen-extra-tags": {
                        "db": "name",
                        "yaml": "name"
                      },
                      "x-order": 3,
                      "type": "string",
                      "maxLength": 100,
                      "description": "Environment name"
                    },
                    "description": {
                      "x-oapi-codegen-extra-tags": {
                        "db": "description",
                        "yaml": "description"
                      },
                      "x-order": 4,
                      "type": "string",
                      "maxLength": 1000,
                      "description": "Environment description"
                    },
                    "organization_id": {
                      "x-go-name": "OrganizationID",
                      "x-oapi-codegen-extra-tags": {
                        "db": "organization_id",
                        "yaml": "organization_id"
                      },
                      "x-order": 5,
                      "description": "Environment organization ID",
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "owner": {
                      "x-oapi-codegen-extra-tags": {
                        "db": "owner",
                        "yaml": "owner"
                      },
                      "x-order": 6,
                      "description": "Environment owner",
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "created_at": {
                      "x-order": 7,
                      "description": "Timestamp when the resource was created.",
                      "x-go-type": "time.Time",
                      "type": "string",
                      "format": "date-time",
                      "x-go-name": "CreatedAt",
                      "x-oapi-codegen-extra-tags": {
                        "db": "created_at",
                        "yaml": "created_at"
                      },
                      "x-go-type-skip-optional-pointer": true
                    },
                    "metadata": {
                      "description": "Additional metadata associated with the environment.",
                      "x-oapi-codegen-extra-tags": {
                        "db": "metadata",
                        "yaml": "metadata"
                      },
                      "x-order": 8,
                      "x-go-type": "core.Map",
                      "x-go-type-skip-optional-pointer": true,
                      "type": "object"
                    },
                    "updated_at": {
                      "x-order": 9,
                      "description": "Timestamp when the resource was updated.",
                      "x-go-type": "time.Time",
                      "type": "string",
                      "format": "date-time",
                      "x-go-name": "UpdatedAt",
                      "x-oapi-codegen-extra-tags": {
                        "db": "updated_at",
                        "yaml": "updated_at"
                      },
                      "x-go-type-skip-optional-pointer": true
                    },
                    "deleted_at": {
                      "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                      "nullable": true,
                      "x-oapi-codegen-extra-tags": {
                        "db": "deleted_at",
                        "yaml": "deleted_at"
                      },
                      "x-go-type": "core.NullTime",
                      "x-go-import": "database/sql",
                      "x-order": 10,
                      "x-go-type-import": {
                        "name": "meshcore",
                        "path": "github.com/meshery/schemas/models/core"
                      },
                      "type": "string",
                      "format": "date-time",
                      "x-go-type-skip-optional-pointer": true
                    }
                  }
                },
                "x-oapi-codegen-extra-tags": {
                  "db": "-",
                  "yaml": "environments",
                  "gorm": "-"
                },
                "x-go-type-skip-optional-pointer": true,
                "x-order": 13
              },
              "schemaVersion": {
                "description": "Specifies the version of the schema used for the definition.",
                "x-order": 14,
                "x-oapi-codegen-extra-tags": {
                  "yaml": "schemaVersion",
                  "db": "-",
                  "gorm": "-"
                },
                "default": "connections.meshery.io/v1beta1",
                "type": "string",
                "minLength": 2,
                "maxLength": 100,
                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                "example": [
                  "v1",
                  "v1alpha1",
                  "v2beta3",
                  "v1.custom-suffix",
                  "models.meshery.io/v1beta1",
                  "capability.meshery.io/v1alpha1"
                ]
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "summary": {
                "type": "object",
                "description": "Counts of the entities a registrant has registered.",
                "properties": {
                  "models": {
                    "type": "integer",
                    "description": "Number of models registered by this registrant.",
                    "minimum": 0
                  },
                  "components": {
                    "type": "integer",
                    "description": "Number of components registered by this registrant.",
                    "minimum": 0
                  },
                  "relationships": {
                    "type": "integer",
                    "description": "Number of relationships registered by this registrant.",
                    "minimum": 0
                  },
                  "policies": {
                    "type": "integer",
                    "description": "Number of policies registered by this registrant.",
                    "minimum": 0
                  }
                }
              }
            }
          }
        ]
      },
      "RegistrantSummary": {
        "type": "object",
        "description": "Counts of the entities a registrant has registered.",
        "properties": {
          "models": {
            "type": "integer",
            "description": "Number of models registered by this registrant.",
            "minimum": 0
          },
          "components": {
            "type": "integer",
            "description": "Number of components registered by this registrant.",
            "minimum": 0
          },
          "relationships": {
            "type": "integer",
            "description": "Number of relationships registered by this registrant.",
            "minimum": 0
          },
          "policies": {
            "type": "integer",
            "description": "Number of policies registered by this registrant.",
            "minimum": 0
          }
        }
      },
      "RegistryRegistrantsPage": {
        "description": "A page of registrants.",
        "allOf": [
          {
            "type": "object",
            "description": "Pagination metadata common to registry list responses. The canonical wire form is camelCase; the snake_case `page_size` and `total_count` keys are emitted alongside during the deprecation window for consumers still reading the legacy spellings.",
            "properties": {
              "page": {
                "type": "integer",
                "description": "Current page number of the result set.",
                "minimum": 0
              },
              "pageSize": {
                "type": "integer",
                "description": "Number of items in the page.",
                "minimum": 0
              },
              "totalCount": {
                "type": "integer",
                "description": "Total number of items available.",
                "minimum": 0
              },
              "page_size": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `pageSize`.",
                "minimum": 0,
                "deprecated": true
              },
              "total_count": {
                "type": "integer",
                "description": "Deprecated snake_case alias of `totalCount`.",
                "minimum": 0,
                "deprecated": true
              }
            }
          },
          {
            "type": "object",
            "properties": {
              "registrants": {
                "type": "array",
                "items": {
                  "description": "A registrant (host) that has registered capabilities into the registry, with a summary of the entities it has registered.",
                  "allOf": [
                    {
                      "$id": "https://schemas.meshery.io/connection.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "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",
                      "additionalProperties": false,
                      "type": "object",
                      "required": [
                        "id",
                        "schemaVersion",
                        "name",
                        "type",
                        "subType",
                        "kind",
                        "status"
                      ],
                      "properties": {
                        "id": {
                          "description": "Connection ID",
                          "x-order": 1,
                          "x-go-name": "ID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "id",
                            "yaml": "id"
                          },
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "name": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "name",
                            "yaml": "name"
                          },
                          "x-order": 2,
                          "type": "string",
                          "description": "Connection Name"
                        },
                        "credentialId": {
                          "x-go-name": "CredentialID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "credential_id",
                            "yaml": "credentialId"
                          },
                          "x-order": 3,
                          "description": "Associated Credential ID",
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "type": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "type",
                            "yaml": "type"
                          },
                          "x-order": 4,
                          "type": "string",
                          "description": "Connection Type (platform, telemetry, collaboration)"
                        },
                        "subType": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "sub_type",
                            "yaml": "subType"
                          },
                          "x-order": 5,
                          "type": "string",
                          "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                        },
                        "kind": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "kind",
                            "yaml": "kind"
                          },
                          "x-order": 6,
                          "type": "string",
                          "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                        },
                        "metadata": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "metadata",
                            "yaml": "metadata"
                          },
                          "x-order": 7,
                          "x-go-type": "core.Map",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/core"
                          },
                          "x-go-type-skip-optional-pointer": true,
                          "type": "object",
                          "description": "Additional connection metadata"
                        },
                        "status": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "status",
                            "yaml": "status"
                          },
                          "x-order": 8,
                          "description": "Connection Status",
                          "type": "string",
                          "enum": [
                            "discovered",
                            "registered",
                            "connected",
                            "ignored",
                            "maintenance",
                            "disconnected",
                            "deleted",
                            "not found"
                          ]
                        },
                        "user_id": {
                          "x-go-name": "UserID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "owner",
                            "yaml": "user_id"
                          },
                          "x-order": 9,
                          "description": "User ID who owns this connection",
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "created_at": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "created_at",
                            "yaml": "created_at"
                          },
                          "x-order": 10,
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "updated_at": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "updated_at",
                            "yaml": "updated_at"
                          },
                          "x-order": 11,
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "deleted_at": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "deleted_at",
                            "yaml": "deleted_at"
                          },
                          "x-order": 12,
                          "description": "SQL null Timestamp to handle null values of time.",
                          "x-go-type": "meshcore.NullTime",
                          "x-go-type-import": {
                            "name": "meshcore",
                            "path": "github.com/meshery/schemas/models/core"
                          },
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "environments": {
                          "type": "array",
                          "description": "Associated environments for this connection",
                          "items": {
                            "x-go-type": "*environmentv1beta1.Environment",
                            "x-go-type-import": {
                              "path": "github.com/meshery/schemas/models/v1beta1/environment",
                              "name": "environmentv1beta1"
                            },
                            "$id": "https://schemas.meshery.io/environment.yaml",
                            "$schema": "http://json-schema.org/draft-07/schema#",
                            "title": "Environment",
                            "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                            "additionalProperties": false,
                            "type": "object",
                            "example": {
                              "id": "00000000-0000-0000-0000-000000000000",
                              "schemaVersion": "environments.meshery.io/v1beta1",
                              "name": "Production Environment",
                              "description": "Connections and credentials for the production cluster.",
                              "organization_id": "00000000-0000-0000-0000-000000000000",
                              "owner": "00000000-0000-0000-0000-000000000000",
                              "created_at": "0001-01-01T00:00:00Z",
                              "metadata": {},
                              "updated_at": "0001-01-01T00:00:00Z",
                              "deleted_at": null
                            },
                            "required": [
                              "id",
                              "schemaVersion",
                              "name",
                              "description",
                              "organization_id"
                            ],
                            "properties": {
                              "id": {
                                "description": "ID",
                                "x-order": 1,
                                "x-go-name": "ID",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "id",
                                  "yaml": "id"
                                },
                                "type": "string",
                                "format": "uuid",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "schemaVersion": {
                                "description": "Specifies the version of the schema to which the environment conforms.",
                                "x-order": 2,
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "schemaVersion",
                                  "db": "-",
                                  "gorm": "-"
                                },
                                "default": "environments.meshery.io/v1beta1",
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 100,
                                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                "example": [
                                  "v1",
                                  "v1alpha1",
                                  "v2beta3",
                                  "v1.custom-suffix",
                                  "models.meshery.io/v1beta1",
                                  "capability.meshery.io/v1alpha1"
                                ]
                              },
                              "name": {
                                "x-oapi-codegen-extra-tags": {
                                  "db": "name",
                                  "yaml": "name"
                                },
                                "x-order": 3,
                                "type": "string",
                                "maxLength": 100,
                                "description": "Environment name"
                              },
                              "description": {
                                "x-oapi-codegen-extra-tags": {
                                  "db": "description",
                                  "yaml": "description"
                                },
                                "x-order": 4,
                                "type": "string",
                                "maxLength": 1000,
                                "description": "Environment description"
                              },
                              "organization_id": {
                                "x-go-name": "OrganizationID",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "organization_id",
                                  "yaml": "organization_id"
                                },
                                "x-order": 5,
                                "description": "Environment organization ID",
                                "type": "string",
                                "format": "uuid",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "owner": {
                                "x-oapi-codegen-extra-tags": {
                                  "db": "owner",
                                  "yaml": "owner"
                                },
                                "x-order": 6,
                                "description": "Environment owner",
                                "type": "string",
                                "format": "uuid",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "created_at": {
                                "x-order": 7,
                                "description": "Timestamp when the resource was created.",
                                "x-go-type": "time.Time",
                                "type": "string",
                                "format": "date-time",
                                "x-go-name": "CreatedAt",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "created_at",
                                  "yaml": "created_at"
                                },
                                "x-go-type-skip-optional-pointer": true
                              },
                              "metadata": {
                                "description": "Additional metadata associated with the environment.",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "metadata",
                                  "yaml": "metadata"
                                },
                                "x-order": 8,
                                "x-go-type": "core.Map",
                                "x-go-type-skip-optional-pointer": true,
                                "type": "object"
                              },
                              "updated_at": {
                                "x-order": 9,
                                "description": "Timestamp when the resource was updated.",
                                "x-go-type": "time.Time",
                                "type": "string",
                                "format": "date-time",
                                "x-go-name": "UpdatedAt",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "updated_at",
                                  "yaml": "updated_at"
                                },
                                "x-go-type-skip-optional-pointer": true
                              },
                              "deleted_at": {
                                "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                "nullable": true,
                                "x-oapi-codegen-extra-tags": {
                                  "db": "deleted_at",
                                  "yaml": "deleted_at"
                                },
                                "x-go-type": "core.NullTime",
                                "x-go-import": "database/sql",
                                "x-order": 10,
                                "x-go-type-import": {
                                  "name": "meshcore",
                                  "path": "github.com/meshery/schemas/models/core"
                                },
                                "type": "string",
                                "format": "date-time",
                                "x-go-type-skip-optional-pointer": true
                              }
                            }
                          },
                          "x-oapi-codegen-extra-tags": {
                            "db": "-",
                            "yaml": "environments",
                            "gorm": "-"
                          },
                          "x-go-type-skip-optional-pointer": true,
                          "x-order": 13
                        },
                        "schemaVersion": {
                          "description": "Specifies the version of the schema used for the definition.",
                          "x-order": 14,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "schemaVersion",
                            "db": "-",
                            "gorm": "-"
                          },
                          "default": "connections.meshery.io/v1beta1",
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 100,
                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                          "example": [
                            "v1",
                            "v1alpha1",
                            "v2beta3",
                            "v1.custom-suffix",
                            "models.meshery.io/v1beta1",
                            "capability.meshery.io/v1alpha1"
                          ]
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "summary": {
                          "type": "object",
                          "description": "Counts of the entities a registrant has registered.",
                          "properties": {
                            "models": {
                              "type": "integer",
                              "description": "Number of models registered by this registrant.",
                              "minimum": 0
                            },
                            "components": {
                              "type": "integer",
                              "description": "Number of components registered by this registrant.",
                              "minimum": 0
                            },
                            "relationships": {
                              "type": "integer",
                              "description": "Number of relationships registered by this registrant.",
                              "minimum": 0
                            },
                            "policies": {
                              "type": "integer",
                              "description": "Number of policies registered by this registrant.",
                              "minimum": 0
                            }
                          }
                        }
                      }
                    }
                  ]
                },
                "description": "The registrants matching the query."
              }
            }
          }
        ]
      },
      "RegistrantData": {
        "type": "object",
        "description": "Envelope with which a registrant submits an entity definition for registration into the capabilities registry.",
        "required": [
          "connection",
          "entityType",
          "entity"
        ],
        "properties": {
          "connection": {
            "description": "Connection identifying the registrant.",
            "$id": "https://schemas.meshery.io/connection.yaml",
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "type": "object",
            "required": [
              "id",
              "schemaVersion",
              "name",
              "type",
              "subType",
              "kind",
              "status"
            ],
            "properties": {
              "id": {
                "description": "Connection ID",
                "x-order": 1,
                "x-go-name": "ID",
                "x-oapi-codegen-extra-tags": {
                  "db": "id"
                },
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "name": {
                "x-oapi-codegen-extra-tags": {
                  "db": "name"
                },
                "x-order": 2,
                "type": "string",
                "description": "Connection Name",
                "minLength": 1,
                "maxLength": 255
              },
              "description": {
                "x-oapi-codegen-extra-tags": {
                  "db": "description",
                  "json": "description"
                },
                "x-order": 3,
                "type": "string",
                "description": "Human-readable description of the connection and its purpose.",
                "maxLength": 1000
              },
              "url": {
                "x-oapi-codegen-extra-tags": {
                  "db": "url",
                  "json": "url"
                },
                "x-order": 4,
                "type": "string",
                "format": "uri",
                "description": "URL of the remote resource this connection points to (e.g. the Helm repository URL, the Kubernetes API server endpoint, the Grafana instance URL).",
                "maxLength": 2048
              },
              "credentialId": {
                "x-go-name": "CredentialID",
                "x-oapi-codegen-extra-tags": {
                  "db": "credential_id",
                  "json": "credentialId"
                },
                "x-order": 5,
                "description": "Associated Credential ID",
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "type": {
                "x-oapi-codegen-extra-tags": {
                  "db": "type",
                  "json": "type",
                  "yaml": "type"
                },
                "x-go-name": "ConnectionType",
                "x-order": 6,
                "type": "string",
                "description": "Connection Type (platform, telemetry, collaboration)",
                "maxLength": 255
              },
              "subType": {
                "x-oapi-codegen-extra-tags": {
                  "db": "sub_type",
                  "json": "subType"
                },
                "x-order": 7,
                "type": "string",
                "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)",
                "maxLength": 255
              },
              "kind": {
                "x-oapi-codegen-extra-tags": {
                  "db": "kind"
                },
                "x-order": 8,
                "type": "string",
                "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)",
                "maxLength": 255
              },
              "modelReference": {
                "x-go-type": "modelv1beta1.ModelReference",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/v1beta1/model",
                  "name": "modelv1beta1"
                },
                "x-order": 8,
                "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",
                "x-oapi-codegen-extra-tags": {
                  "gorm": "model_reference",
                  "db": "model_reference",
                  "json": "modelReference",
                  "yaml": "modelReference"
                },
                "x-generate-db-helpers": true,
                "type": "object",
                "required": [
                  "id",
                  "name",
                  "version",
                  "displayName",
                  "model",
                  "registrant"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                    "x-go-type": "uuid.UUID",
                    "x-go-type-import": {
                      "path": "github.com/gofrs/uuid"
                    }
                  },
                  "name": {
                    "type": "string",
                    "description": "The unique name for the model within the scope of a registrant.",
                    "pattern": "^[a-z0-9-]+$",
                    "examples": [
                      "cert-manager"
                    ]
                  },
                  "version": {
                    "description": "Version of the model definition.",
                    "type": "string",
                    "minLength": 5,
                    "maxLength": 100,
                    "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                  },
                  "displayName": {
                    "type": "string",
                    "description": "Human-readable name for the model.",
                    "minLength": 1,
                    "maxLength": 100,
                    "pattern": "^[a-zA-Z0-9 ]+$",
                    "examples": [
                      "Cert Manager"
                    ]
                  },
                  "model": {
                    "type": "object",
                    "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                    "required": [
                      "version"
                    ],
                    "properties": {
                      "version": {
                        "description": "Version of the model as defined by the registrant.",
                        "x-oapi-codegen-extra-tags": {
                          "json": "version"
                        },
                        "x-order": 1,
                        "type": "string",
                        "minLength": 5,
                        "maxLength": 100,
                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                      }
                    }
                  },
                  "registrant": {
                    "x-go-type": "RegistrantReference",
                    "x-oapi-codegen-extra-tags": {
                      "json": "registrant"
                    },
                    "type": "object",
                    "required": [
                      "kind"
                    ],
                    "properties": {
                      "kind": {
                        "type": "string",
                        "description": "Kind of the registrant.",
                        "maxLength": 255
                      }
                    }
                  }
                }
              },
              "metadata": {
                "x-oapi-codegen-extra-tags": {
                  "db": "metadata"
                },
                "x-order": 9,
                "x-go-type": "core.Map",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/core"
                },
                "x-go-type-skip-optional-pointer": true,
                "type": "object",
                "description": "Additional connection metadata"
              },
              "credentialSchema": {
                "x-oapi-codegen-extra-tags": {
                  "db": "credential_schema"
                },
                "x-order": 9,
                "x-go-type": "core.Map",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/core"
                },
                "x-go-type-skip-optional-pointer": true,
                "type": "object",
                "description": "Schema for the credential Associated with the connection"
              },
              "connectionSchema": {
                "x-oapi-codegen-extra-tags": {
                  "db": "connection_schema"
                },
                "x-order": 9,
                "x-go-type": "core.Map",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/core"
                },
                "x-go-type-skip-optional-pointer": true,
                "type": "object",
                "description": "Schema for the connection"
              },
              "styles": {
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json",
                  "db": "-",
                  "yaml": "styles",
                  "json": "styles"
                },
                "x-go-type": "core.ComponentStyles",
                "x-go-type-import": {
                  "path": "github.com/meshery/schemas/models/core",
                  "name": "core"
                },
                "x-order": 17,
                "description": "Visualization styles for the connection, including svgColor and svgWhite used for UI representation.",
                "type": "object",
                "required": [
                  "shape",
                  "primaryColor",
                  "svgColor",
                  "svgWhite",
                  "svgComplete"
                ],
                "allOf": [
                  {
                    "type": "object",
                    "description": "Common styles for all entities",
                    "additionalProperties": true,
                    "required": [
                      "primaryColor",
                      "svgColor",
                      "svgWhite",
                      "svgComplete"
                    ],
                    "properties": {
                      "primaryColor": {
                        "type": "string",
                        "description": "Primary color of the component used for UI representation.",
                        "maxLength": 500
                      },
                      "secondaryColor": {
                        "type": "string",
                        "description": "Secondary color of the entity used for UI representation.",
                        "maxLength": 500
                      },
                      "svgWhite": {
                        "type": "string",
                        "description": "White SVG of the entity used for UI representation on dark background.",
                        "maxLength": 500
                      },
                      "svgColor": {
                        "type": "string",
                        "description": "Colored SVG of the entity used for UI representation on light background.",
                        "maxLength": 500
                      },
                      "svgComplete": {
                        "type": "string",
                        "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                        "maxLength": 500
                      },
                      "color": {
                        "type": "string",
                        "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 500
                      },
                      "textOpacity": {
                        "type": "number",
                        "description": "The opacity of the label text, including its outline.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "fontFamily": {
                        "type": "string",
                        "description": "A comma-separated list of font names to use on the label text.",
                        "maxLength": 500
                      },
                      "fontSize": {
                        "type": "string",
                        "description": "The size of the label text.",
                        "maxLength": 500
                      },
                      "fontStyle": {
                        "type": "string",
                        "description": "A CSS font style to be applied to the label text.",
                        "maxLength": 500
                      },
                      "fontWeight": {
                        "type": "string",
                        "description": "A CSS font weight to be applied to the label text.",
                        "maxLength": 500
                      },
                      "textTransform": {
                        "type": "string",
                        "description": "A transformation to apply to the label text",
                        "enum": [
                          "none",
                          "uppercase",
                          "lowercase"
                        ]
                      },
                      "opacity": {
                        "type": "number",
                        "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.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "zIndex": {
                        "type": "integer",
                        "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.",
                        "minimum": 0
                      },
                      "label": {
                        "type": "string",
                        "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                        "maxLength": 500
                      },
                      "animation": {
                        "type": "object",
                        "description": "The animation to apply to the element. example ripple,bounce,etc"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "properties": {
                      "shape": {
                        "type": "string",
                        "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)",
                        "enum": [
                          "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"
                        ]
                      },
                      "position": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "x",
                          "y"
                        ],
                        "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.",
                        "properties": {
                          "x": {
                            "type": "number",
                            "description": "The x-coordinate of the node.",
                            "minimum": -1000000,
                            "maximum": 1000000,
                            "x-go-type": "float64"
                          },
                          "y": {
                            "type": "number",
                            "description": "The y-coordinate of the node.",
                            "minimum": -1000000,
                            "maximum": 1000000,
                            "x-go-type": "float64"
                          }
                        }
                      },
                      "bodyText": {
                        "type": "string",
                        "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                        "maxLength": 500
                      },
                      "bodyTextWrap": {
                        "type": "string",
                        "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                        "enum": [
                          "none",
                          "wrap",
                          "ellipsis"
                        ]
                      },
                      "bodyTextMaxWidth": {
                        "type": "string",
                        "description": "The maximum width for wrapping text in the node.",
                        "maxLength": 50
                      },
                      "bodyTextOpacity": {
                        "type": "number",
                        "description": "The opacity of the node's body text, including its outline.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "bodyTextBackgroundColor": {
                        "type": "string",
                        "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "bodyTextFontSize": {
                        "type": "number",
                        "description": "The size of the node's body text.",
                        "minimum": 0
                      },
                      "bodyTextColor": {
                        "type": "string",
                        "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "bodyTextFontWeight": {
                        "type": "string",
                        "description": "A CSS font weight to be applied to the node's body text.",
                        "maxLength": 50
                      },
                      "bodyTextHorizontalAlign": {
                        "type": "string",
                        "description": "A CSS horizontal alignment to be applied to the node's body text.",
                        "maxLength": 50
                      },
                      "bodyTextDecoration": {
                        "type": "string",
                        "description": "A CSS text decoration to be applied to the node's body text.",
                        "maxLength": 100
                      },
                      "bodyTextVerticalAlign": {
                        "type": "string",
                        "description": "A CSS vertical alignment to be applied to the node's body text.",
                        "maxLength": 50
                      },
                      "width": {
                        "type": "number",
                        "description": "The width of the node's body or the width of an edge's line.",
                        "minimum": 0
                      },
                      "height": {
                        "type": "number",
                        "description": "The height of the node's body",
                        "minimum": 0
                      },
                      "backgroundImage": {
                        "type": "string",
                        "format": "uri",
                        "description": "The URL that points to the image to show in the node.",
                        "maxLength": 2048
                      },
                      "backgroundColor": {
                        "type": "string",
                        "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "backgroundBlacken": {
                        "type": "number",
                        "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                        "maximum": 1,
                        "minimum": -1
                      },
                      "backgroundOpacity": {
                        "type": "number",
                        "description": "The opacity level of the node's background colour",
                        "maximum": 1,
                        "minimum": 0
                      },
                      "backgroundPositionX": {
                        "type": "string",
                        "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundPositionY": {
                        "type": "string",
                        "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundOffsetX": {
                        "type": "string",
                        "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundOffsetY": {
                        "type": "string",
                        "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                        "maxLength": 50
                      },
                      "backgroundFit": {
                        "type": "string",
                        "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                        "enum": [
                          "none",
                          "contain",
                          "cover"
                        ]
                      },
                      "backgroundClip": {
                        "type": "string",
                        "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                        "enum": [
                          "none",
                          "node",
                          "node-border"
                        ]
                      },
                      "backgroundWidthRelativeTo": {
                        "type": "string",
                        "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                        "enum": [
                          "none",
                          "inner",
                          "outer"
                        ]
                      },
                      "backgroundHeightRelativeTo": {
                        "type": "string",
                        "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                        "enum": [
                          "none",
                          "inner",
                          "outer"
                        ]
                      },
                      "borderWidth": {
                        "type": "number",
                        "description": "The size of the node's border.",
                        "minimum": 0
                      },
                      "borderStyle": {
                        "type": "string",
                        "description": "The style of the node's border",
                        "enum": [
                          "solid",
                          "dotted",
                          "dashed",
                          "double"
                        ]
                      },
                      "borderColor": {
                        "type": "string",
                        "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "borderOpacity": {
                        "type": "number",
                        "description": "The opacity of the node's border",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "padding": {
                        "type": "number",
                        "description": "The amount of padding around all sides of the node.",
                        "minimum": 0
                      },
                      "textHalign": {
                        "type": "string",
                        "description": "The horizontal alignment of a node's label",
                        "enum": [
                          "left",
                          "center",
                          "right"
                        ]
                      },
                      "textValign": {
                        "type": "string",
                        "description": "The vertical alignment of a node's label",
                        "enum": [
                          "top",
                          "center",
                          "bottom"
                        ]
                      },
                      "ghost": {
                        "type": "string",
                        "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                        "default": "no",
                        "enum": [
                          "yes",
                          "no"
                        ]
                      },
                      "activeBgColor": {
                        "type": "string",
                        "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.",
                        "maxLength": 100
                      },
                      "activeBgOpacity": {
                        "type": "string",
                        "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                        "maxLength": 50
                      },
                      "activeBgSize": {
                        "type": "string",
                        "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                        "maxLength": 50
                      },
                      "selectionBoxColor": {
                        "type": "string",
                        "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.",
                        "maxLength": 100
                      },
                      "selectionBoxBorderWidth": {
                        "type": "number",
                        "description": "The size of the border on the selection box. Selector needs to be *core*",
                        "minimum": 0
                      },
                      "selectionBoxOpacity": {
                        "type": "number",
                        "description": "The opacity of the selection box. Selector needs to be *core*",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "outsideTextureBgColor": {
                        "type": "string",
                        "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.",
                        "maxLength": 100
                      },
                      "outsideTextureBgOpacity": {
                        "type": "number",
                        "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "shapePolygonPoints": {
                        "type": "string",
                        "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 )",
                        "maxLength": 2000
                      },
                      "menuBackgroundColor": {
                        "type": "string",
                        "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      },
                      "menuBackgroundOpacity": {
                        "type": "number",
                        "description": "The opacity of the background of the component menu.",
                        "minimum": 0,
                        "maximum": 1
                      },
                      "menuForgroundColor": {
                        "type": "string",
                        "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                        "maxLength": 100
                      }
                    }
                  }
                ]
              },
              "status": {
                "x-oapi-codegen-extra-tags": {
                  "db": "status"
                },
                "x-order": 10,
                "description": "Connection Status",
                "type": "string",
                "enum": [
                  "discovered",
                  "registered",
                  "connected",
                  "ignored",
                  "maintenance",
                  "disconnected",
                  "deleted",
                  "not found"
                ]
              },
              "transitionMap": {
                "type": "object",
                "description": "Map describing the connection state machine. Each key is a current connection status and its value is the list of states the connection may transition to from that status, along with a description of each transition.",
                "additionalProperties": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "description": "A single permissible state transition for a connection, describing the next reachable state and the meaning of that transition.",
                    "required": [
                      "nextState"
                    ],
                    "properties": {
                      "nextState": {
                        "description": "The connection state reachable from the current state.",
                        "x-go-name": "NextState",
                        "x-order": 1,
                        "type": "string",
                        "enum": [
                          "discovered",
                          "registered",
                          "connected",
                          "ignored",
                          "maintenance",
                          "disconnected",
                          "deleted",
                          "not found"
                        ]
                      },
                      "description": {
                        "type": "string",
                        "description": "Human-readable explanation of when or why this transition occurs.",
                        "maxLength": 1000,
                        "x-oapi-codegen-extra-tags": {
                          "json": "description,omitempty"
                        },
                        "x-order": 2
                      }
                    }
                  }
                },
                "x-go-type-skip-optional-pointer": true,
                "x-oapi-codegen-extra-tags": {
                  "gorm": "type:bytes;serializer:json",
                  "db": "-",
                  "json": "transitionMap,omitempty"
                },
                "x-order": 18
              },
              "owner": {
                "x-go-name": "Owner",
                "x-oapi-codegen-extra-tags": {
                  "db": "owner",
                  "json": "owner"
                },
                "x-order": 11,
                "description": "User ID who owns this connection",
                "type": "string",
                "format": "uuid",
                "x-go-type": "uuid.UUID",
                "x-go-type-import": {
                  "path": "github.com/gofrs/uuid"
                }
              },
              "createdAt": {
                "description": "Timestamp when the connection was created.",
                "x-oapi-codegen-extra-tags": {
                  "db": "created_at",
                  "json": "createdAt"
                },
                "x-order": 12,
                "type": "string",
                "format": "date-time",
                "x-go-type-skip-optional-pointer": true
              },
              "updatedAt": {
                "description": "Timestamp when the connection was last updated.",
                "x-oapi-codegen-extra-tags": {
                  "db": "updated_at",
                  "json": "updatedAt"
                },
                "x-order": 13,
                "type": "string",
                "format": "date-time",
                "x-go-type-skip-optional-pointer": true
              },
              "deletedAt": {
                "description": "Timestamp when the connection was soft-deleted, if applicable.",
                "x-oapi-codegen-extra-tags": {
                  "db": "deleted_at",
                  "json": "deletedAt"
                },
                "x-order": 14,
                "x-go-type": "meshcore.NullTime",
                "x-go-type-import": {
                  "name": "meshcore",
                  "path": "github.com/meshery/schemas/models/core"
                },
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "x-go-type-skip-optional-pointer": true
              },
              "environments": {
                "type": "array",
                "description": "Associated environments for this connection",
                "items": {
                  "x-go-type": "*environmentv1beta3.Environment",
                  "x-go-type-import": {
                    "path": "github.com/meshery/schemas/models/v1beta3/environment",
                    "name": "environmentv1beta3"
                  },
                  "$id": "https://schemas.meshery.io/environment.yaml",
                  "$schema": "http://json-schema.org/draft-07/schema#",
                  "title": "Environment",
                  "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                  "additionalProperties": false,
                  "type": "object",
                  "example": {
                    "id": "00000000-0000-0000-0000-000000000000",
                    "schemaVersion": "environments.meshery.io/v1beta3",
                    "name": "Production Environment",
                    "description": "Connections and credentials for the production cluster.",
                    "organizationId": "00000000-0000-0000-0000-000000000000",
                    "owner": "00000000-0000-0000-0000-000000000000",
                    "createdAt": "0001-01-01T00:00:00Z",
                    "metadata": {},
                    "updatedAt": "0001-01-01T00:00:00Z",
                    "deletedAt": null
                  },
                  "required": [
                    "id",
                    "schemaVersion",
                    "name",
                    "description",
                    "organizationId"
                  ],
                  "properties": {
                    "id": {
                      "description": "ID",
                      "x-order": 1,
                      "x-go-name": "ID",
                      "x-oapi-codegen-extra-tags": {
                        "db": "id",
                        "json": "id"
                      },
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "schemaVersion": {
                      "description": "Specifies the version of the schema to which the environment conforms.",
                      "x-order": 2,
                      "x-oapi-codegen-extra-tags": {
                        "json": "schemaVersion",
                        "db": "-",
                        "gorm": "-"
                      },
                      "default": "environments.meshery.io/v1beta3",
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 100,
                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                      "example": [
                        "v1",
                        "v1alpha1",
                        "v2beta3",
                        "v1.custom-suffix",
                        "models.meshery.io/v1beta1",
                        "capability.meshery.io/v1alpha1"
                      ]
                    },
                    "name": {
                      "x-oapi-codegen-extra-tags": {
                        "db": "name",
                        "json": "name"
                      },
                      "x-order": 3,
                      "type": "string",
                      "maxLength": 100,
                      "description": "Environment name"
                    },
                    "description": {
                      "x-oapi-codegen-extra-tags": {
                        "db": "description",
                        "json": "description"
                      },
                      "x-order": 4,
                      "type": "string",
                      "maxLength": 1000,
                      "description": "Environment description"
                    },
                    "organizationId": {
                      "x-go-name": "OrganizationID",
                      "x-oapi-codegen-extra-tags": {
                        "db": "organization_id",
                        "json": "organizationId"
                      },
                      "x-order": 5,
                      "description": "Environment organization ID",
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "owner": {
                      "x-oapi-codegen-extra-tags": {
                        "db": "owner",
                        "json": "owner"
                      },
                      "x-order": 6,
                      "description": "Environment owner",
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "createdAt": {
                      "description": "Timestamp when the environment was created.",
                      "x-oapi-codegen-extra-tags": {
                        "db": "created_at",
                        "yaml": "created_at",
                        "json": "createdAt"
                      },
                      "x-order": 7,
                      "x-go-type": "time.Time",
                      "type": "string",
                      "format": "date-time",
                      "x-go-name": "CreatedAt",
                      "x-go-type-skip-optional-pointer": true
                    },
                    "metadata": {
                      "description": "Additional metadata associated with the environment.",
                      "x-oapi-codegen-extra-tags": {
                        "db": "metadata",
                        "json": "metadata"
                      },
                      "x-order": 8,
                      "x-go-type": "core.Map",
                      "x-go-type-skip-optional-pointer": true,
                      "type": "object"
                    },
                    "updatedAt": {
                      "description": "Timestamp when the environment was last updated.",
                      "x-oapi-codegen-extra-tags": {
                        "db": "updated_at",
                        "yaml": "updated_at",
                        "json": "updatedAt"
                      },
                      "x-order": 9,
                      "x-go-type": "time.Time",
                      "type": "string",
                      "format": "date-time",
                      "x-go-name": "UpdatedAt",
                      "x-go-type-skip-optional-pointer": true
                    },
                    "deletedAt": {
                      "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                      "nullable": true,
                      "x-oapi-codegen-extra-tags": {
                        "db": "deleted_at",
                        "json": "deletedAt"
                      },
                      "x-go-type": "core.NullTime",
                      "x-go-import": "database/sql",
                      "x-order": 10,
                      "type": "string",
                      "format": "date-time",
                      "x-go-type-skip-optional-pointer": true
                    }
                  }
                },
                "x-oapi-codegen-extra-tags": {
                  "db": "-",
                  "gorm": "-"
                },
                "x-go-type-skip-optional-pointer": true,
                "x-order": 15
              },
              "schemaVersion": {
                "description": "Specifies the version of the schema used for the definition.",
                "x-order": 16,
                "x-oapi-codegen-extra-tags": {
                  "db": "-",
                  "gorm": "-"
                },
                "default": "connections.meshery.io/v1beta3",
                "type": "string",
                "minLength": 2,
                "maxLength": 100,
                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                "example": [
                  "v1",
                  "v1alpha1",
                  "v2beta3",
                  "v1.custom-suffix",
                  "models.meshery.io/v1beta1",
                  "capability.meshery.io/v1alpha1"
                ]
              }
            }
          },
          "entityType": {
            "type": "string",
            "description": "Type of the entity being registered (e.g. `component`, `relationship`).",
            "maxLength": 255
          },
          "entity": {
            "type": "string",
            "format": "byte",
            "description": "Base64-encoded JSON definition of the entity being registered."
          }
        }
      },
      "RegistryImportResponse": {
        "type": "object",
        "description": "Summary of an import into the capabilities registry.",
        "properties": {
          "entityCount": {
            "type": "object",
            "description": "Counts of imported and failed entities by type.",
            "properties": {
              "compCount": {
                "type": "integer",
                "description": "Number of components imported.",
                "minimum": 0
              },
              "relCount": {
                "type": "integer",
                "description": "Number of relationships imported.",
                "minimum": 0
              },
              "modelCount": {
                "type": "integer",
                "description": "Number of models imported.",
                "minimum": 0
              },
              "errCompCount": {
                "type": "integer",
                "description": "Number of components that failed to import.",
                "minimum": 0
              },
              "errRelCount": {
                "type": "integer",
                "description": "Number of relationships that failed to import.",
                "minimum": 0
              },
              "errModelCount": {
                "type": "integer",
                "description": "Number of models that failed to import.",
                "minimum": 0
              },
              "totalErrCount": {
                "type": "integer",
                "description": "Total number of entities that failed to import.",
                "minimum": 0
              }
            }
          },
          "errMsg": {
            "type": "string",
            "description": "Aggregated, human-readable description of import failures, if any.",
            "maxLength": 65536
          },
          "entityTypeSummary": {
            "type": "object",
            "description": "Per-type summaries of imported entities and failures.",
            "properties": {
              "successfulComponents": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                },
                "description": "Components successfully imported."
              },
              "successfulRelationships": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                },
                "description": "Relationships successfully imported."
              },
              "successfulModels": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                },
                "description": "Models successfully imported."
              },
              "unsuccessfulComponentNames": {
                "type": "array",
                "items": {},
                "description": "Names of entities that failed to import, with their errors."
              }
            }
          },
          "modelName": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 255
            },
            "description": "Names of the models processed by the import."
          }
        }
      },
      "RegistryImportEntityCount": {
        "type": "object",
        "description": "Counts of imported and failed entities by type.",
        "properties": {
          "compCount": {
            "type": "integer",
            "description": "Number of components imported.",
            "minimum": 0
          },
          "relCount": {
            "type": "integer",
            "description": "Number of relationships imported.",
            "minimum": 0
          },
          "modelCount": {
            "type": "integer",
            "description": "Number of models imported.",
            "minimum": 0
          },
          "errCompCount": {
            "type": "integer",
            "description": "Number of components that failed to import.",
            "minimum": 0
          },
          "errRelCount": {
            "type": "integer",
            "description": "Number of relationships that failed to import.",
            "minimum": 0
          },
          "errModelCount": {
            "type": "integer",
            "description": "Number of models that failed to import.",
            "minimum": 0
          },
          "totalErrCount": {
            "type": "integer",
            "description": "Total number of entities that failed to import.",
            "minimum": 0
          }
        }
      },
      "RegistryImportEntitySummary": {
        "type": "object",
        "description": "Per-type summaries of imported entities and failures.",
        "properties": {
          "successfulComponents": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true
            },
            "description": "Components successfully imported."
          },
          "successfulRelationships": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true
            },
            "description": "Relationships successfully imported."
          },
          "successfulModels": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true
            },
            "description": "Models successfully imported."
          },
          "unsuccessfulComponentNames": {
            "type": "array",
            "items": {},
            "description": "Names of entities that failed to import, with their errors."
          }
        }
      },
      "GenerateComponentsRequest": {
        "type": "object",
        "description": "Request to generate components for a set of packages.",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "name"
              ],
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Name of the package (Artifact Hub package name) to generate components for.",
                  "maxLength": 255
                },
                "register": {
                  "type": "boolean",
                  "description": "Whether to register the generated components into the registry."
                }
              }
            },
            "description": "Packages for which to generate components."
          }
        }
      },
      "GenerateComponentsRequestItem": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the package (Artifact Hub package name) to generate components for.",
            "maxLength": 255
          },
          "register": {
            "type": "boolean",
            "description": "Whether to register the generated components into the registry."
          }
        }
      },
      "GenerateComponentsResponseItem": {
        "type": "object",
        "description": "Generation result for a single requested package.",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the package the components were generated for.",
            "maxLength": 255
          },
          "components": {
            "type": "array",
            "items": {
              "$id": "https://schemas.meshery.io/component.yaml",
              "$schema": "http://json-schema.org/draft-07/schema#",
              "description": "Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components",
              "additionalProperties": false,
              "type": "object",
              "properties": {
                "id": {
                  "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                  "x-order": 1,
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "id",
                    "json": "id"
                  },
                  "type": "string",
                  "format": "uuid",
                  "x-go-type": "uuid.UUID",
                  "x-go-type-import": {
                    "path": "github.com/gofrs/uuid"
                  }
                },
                "schemaVersion": {
                  "x-order": 2,
                  "description": "Specifies the version of the schema to which the component definition conforms.",
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "schemaVersion",
                    "json": "schemaVersion"
                  },
                  "default": "components.meshery.io/v1beta3",
                  "type": "string",
                  "minLength": 2,
                  "maxLength": 100,
                  "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                  "example": [
                    "v1",
                    "v1alpha1",
                    "v2beta3",
                    "v1.custom-suffix",
                    "models.meshery.io/v1beta1",
                    "capability.meshery.io/v1alpha1"
                  ]
                },
                "version": {
                  "x-order": 3,
                  "description": "Version of the component definition.",
                  "minLength": 1,
                  "maxLength": 50,
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "version",
                    "json": "version"
                  },
                  "type": "string",
                  "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                },
                "displayName": {
                  "x-order": 4,
                  "description": "Name of the component in human-readable format.",
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "displayName",
                    "json": "displayName"
                  },
                  "type": "string",
                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                },
                "description": {
                  "x-order": 5,
                  "type": "string",
                  "description": "A written representation of the purpose and characteristics of the component.",
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "description",
                    "json": "description"
                  },
                  "maxLength": 5000
                },
                "format": {
                  "x-order": 6,
                  "type": "string",
                  "enum": [
                    "JSON",
                    "CUE"
                  ],
                  "default": "JSON",
                  "description": "Format specifies the format used in the `component.schema` field. JSON is the default.",
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "format",
                    "json": "format"
                  }
                },
                "model": {
                  "x-go-type": "*modelv1beta1.ModelDefinition",
                  "x-go-type-import": {
                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                    "name": "modelv1beta1"
                  },
                  "x-order": 7,
                  "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",
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "foreignKey:ModelID;references:ID",
                    "json": "model",
                    "yaml": "model"
                  },
                  "$id": "https://schemas.meshery.io/model.yaml",
                  "$schema": "http://json-schema.org/draft-07/schema#",
                  "additionalProperties": false,
                  "type": "object",
                  "properties": {
                    "id": {
                      "description": "Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).",
                      "x-order": 1,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "id",
                        "json": "id"
                      },
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "schemaVersion": {
                      "description": "Specifies the version of the schema used for the definition.",
                      "x-order": 2,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "schemaVersion",
                        "json": "schemaVersion"
                      },
                      "default": "models.meshery.io/v1beta1",
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 100,
                      "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                      "example": [
                        "v1",
                        "v1alpha1",
                        "v2beta3",
                        "v1.custom-suffix",
                        "models.meshery.io/v1beta1",
                        "capability.meshery.io/v1alpha1"
                      ]
                    },
                    "version": {
                      "description": "Version of the model definition.",
                      "type": "string",
                      "x-order": 3,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "version",
                        "json": "version"
                      },
                      "minLength": 5,
                      "maxLength": 100,
                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                    },
                    "name": {
                      "type": "string",
                      "description": "The unique name for the model within the scope of a registrant.",
                      "helperText": "Model name should be in lowercase with hyphens, not whitespaces.",
                      "pattern": "^[a-z0-9-]+$",
                      "examples": [
                        "cert-manager"
                      ],
                      "x-order": 4,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "name",
                        "json": "name"
                      },
                      "default": "untitled-model"
                    },
                    "displayName": {
                      "description": "Human-readable name for the model.",
                      "helperText": "Model display name may include letters, numbers, and spaces. Special characters are not allowed.",
                      "minLength": 1,
                      "maxLength": 100,
                      "type": "string",
                      "pattern": "^[a-zA-Z0-9 ]+$",
                      "examples": [
                        "Cert Manager"
                      ],
                      "x-order": 5,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "displayName",
                        "json": "displayName"
                      },
                      "default": "Untitled Model"
                    },
                    "description": {
                      "type": "string",
                      "default": "A new Meshery model.",
                      "description": "Description of the model.",
                      "minLength": 1,
                      "maxLength": 1000,
                      "x-order": 6,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "description,omitempty",
                        "json": "description,omitempty"
                      }
                    },
                    "status": {
                      "type": "string",
                      "description": "Status of model, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                      "enum": [
                        "ignored",
                        "enabled",
                        "duplicate"
                      ],
                      "x-order": 7,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "status",
                        "json": "status"
                      },
                      "default": "enabled"
                    },
                    "registrant": {
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "registrant",
                        "json": "registrant",
                        "gorm": "foreignKey:RegistrantId;references:ID"
                      },
                      "x-order": 8,
                      "x-go-type": "connectionv1beta1.Connection",
                      "x-go-type-import": {
                        "path": "github.com/meshery/schemas/models/v1beta1/connection",
                        "name": "connectionv1beta1"
                      },
                      "$id": "https://schemas.meshery.io/connection.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "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",
                      "additionalProperties": false,
                      "type": "object",
                      "required": [
                        "id",
                        "schemaVersion",
                        "name",
                        "type",
                        "subType",
                        "kind",
                        "status"
                      ],
                      "properties": {
                        "id": {
                          "description": "Connection ID",
                          "x-order": 1,
                          "x-go-name": "ID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "id",
                            "yaml": "id"
                          },
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "name": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "name",
                            "yaml": "name"
                          },
                          "x-order": 2,
                          "type": "string",
                          "description": "Connection Name"
                        },
                        "credentialId": {
                          "x-go-name": "CredentialID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "credential_id",
                            "yaml": "credentialId"
                          },
                          "x-order": 3,
                          "description": "Associated Credential ID",
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "type": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "type",
                            "yaml": "type"
                          },
                          "x-order": 4,
                          "type": "string",
                          "description": "Connection Type (platform, telemetry, collaboration)"
                        },
                        "subType": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "sub_type",
                            "yaml": "subType"
                          },
                          "x-order": 5,
                          "type": "string",
                          "description": "Connection Subtype (cloud, identity, metrics, chat, git, orchestration)"
                        },
                        "kind": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "kind",
                            "yaml": "kind"
                          },
                          "x-order": 6,
                          "type": "string",
                          "description": "Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github)"
                        },
                        "metadata": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "metadata",
                            "yaml": "metadata"
                          },
                          "x-order": 7,
                          "x-go-type": "core.Map",
                          "x-go-type-import": {
                            "path": "github.com/meshery/schemas/models/core"
                          },
                          "x-go-type-skip-optional-pointer": true,
                          "type": "object",
                          "description": "Additional connection metadata"
                        },
                        "status": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "status",
                            "yaml": "status"
                          },
                          "x-order": 8,
                          "description": "Connection Status",
                          "type": "string",
                          "enum": [
                            "discovered",
                            "registered",
                            "connected",
                            "ignored",
                            "maintenance",
                            "disconnected",
                            "deleted",
                            "not found"
                          ]
                        },
                        "user_id": {
                          "x-go-name": "UserID",
                          "x-oapi-codegen-extra-tags": {
                            "db": "owner",
                            "yaml": "user_id"
                          },
                          "x-order": 9,
                          "description": "User ID who owns this connection",
                          "type": "string",
                          "format": "uuid",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "created_at": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "created_at",
                            "yaml": "created_at"
                          },
                          "x-order": 10,
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "updated_at": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "updated_at",
                            "yaml": "updated_at"
                          },
                          "x-order": 11,
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "deleted_at": {
                          "x-oapi-codegen-extra-tags": {
                            "db": "deleted_at",
                            "yaml": "deleted_at"
                          },
                          "x-order": 12,
                          "description": "SQL null Timestamp to handle null values of time.",
                          "x-go-type": "meshcore.NullTime",
                          "x-go-type-import": {
                            "name": "meshcore",
                            "path": "github.com/meshery/schemas/models/core"
                          },
                          "type": "string",
                          "format": "date-time",
                          "x-go-type-skip-optional-pointer": true
                        },
                        "environments": {
                          "type": "array",
                          "description": "Associated environments for this connection",
                          "items": {
                            "x-go-type": "*environmentv1beta1.Environment",
                            "x-go-type-import": {
                              "path": "github.com/meshery/schemas/models/v1beta1/environment",
                              "name": "environmentv1beta1"
                            },
                            "$id": "https://schemas.meshery.io/environment.yaml",
                            "$schema": "http://json-schema.org/draft-07/schema#",
                            "title": "Environment",
                            "description": "Environments allow you to logically group related Connections and their associated Credentials. Learn more at https://docs.meshery.io/concepts/logical/environments",
                            "additionalProperties": false,
                            "type": "object",
                            "example": {
                              "id": "00000000-0000-0000-0000-000000000000",
                              "schemaVersion": "environments.meshery.io/v1beta1",
                              "name": "Production Environment",
                              "description": "Connections and credentials for the production cluster.",
                              "organization_id": "00000000-0000-0000-0000-000000000000",
                              "owner": "00000000-0000-0000-0000-000000000000",
                              "created_at": "0001-01-01T00:00:00Z",
                              "metadata": {},
                              "updated_at": "0001-01-01T00:00:00Z",
                              "deleted_at": null
                            },
                            "required": [
                              "id",
                              "schemaVersion",
                              "name",
                              "description",
                              "organization_id"
                            ],
                            "properties": {
                              "id": {
                                "description": "ID",
                                "x-order": 1,
                                "x-go-name": "ID",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "id",
                                  "yaml": "id"
                                },
                                "type": "string",
                                "format": "uuid",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "schemaVersion": {
                                "description": "Specifies the version of the schema to which the environment conforms.",
                                "x-order": 2,
                                "x-oapi-codegen-extra-tags": {
                                  "yaml": "schemaVersion",
                                  "db": "-",
                                  "gorm": "-"
                                },
                                "default": "environments.meshery.io/v1beta1",
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 100,
                                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                "example": [
                                  "v1",
                                  "v1alpha1",
                                  "v2beta3",
                                  "v1.custom-suffix",
                                  "models.meshery.io/v1beta1",
                                  "capability.meshery.io/v1alpha1"
                                ]
                              },
                              "name": {
                                "x-oapi-codegen-extra-tags": {
                                  "db": "name",
                                  "yaml": "name"
                                },
                                "x-order": 3,
                                "type": "string",
                                "maxLength": 100,
                                "description": "Environment name"
                              },
                              "description": {
                                "x-oapi-codegen-extra-tags": {
                                  "db": "description",
                                  "yaml": "description"
                                },
                                "x-order": 4,
                                "type": "string",
                                "maxLength": 1000,
                                "description": "Environment description"
                              },
                              "organization_id": {
                                "x-go-name": "OrganizationID",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "organization_id",
                                  "yaml": "organization_id"
                                },
                                "x-order": 5,
                                "description": "Environment organization ID",
                                "type": "string",
                                "format": "uuid",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "owner": {
                                "x-oapi-codegen-extra-tags": {
                                  "db": "owner",
                                  "yaml": "owner"
                                },
                                "x-order": 6,
                                "description": "Environment owner",
                                "type": "string",
                                "format": "uuid",
                                "x-go-type": "uuid.UUID",
                                "x-go-type-import": {
                                  "path": "github.com/gofrs/uuid"
                                }
                              },
                              "created_at": {
                                "x-order": 7,
                                "description": "Timestamp when the resource was created.",
                                "x-go-type": "time.Time",
                                "type": "string",
                                "format": "date-time",
                                "x-go-name": "CreatedAt",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "created_at",
                                  "yaml": "created_at"
                                },
                                "x-go-type-skip-optional-pointer": true
                              },
                              "metadata": {
                                "description": "Additional metadata associated with the environment.",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "metadata",
                                  "yaml": "metadata"
                                },
                                "x-order": 8,
                                "x-go-type": "core.Map",
                                "x-go-type-skip-optional-pointer": true,
                                "type": "object"
                              },
                              "updated_at": {
                                "x-order": 9,
                                "description": "Timestamp when the resource was updated.",
                                "x-go-type": "time.Time",
                                "type": "string",
                                "format": "date-time",
                                "x-go-name": "UpdatedAt",
                                "x-oapi-codegen-extra-tags": {
                                  "db": "updated_at",
                                  "yaml": "updated_at"
                                },
                                "x-go-type-skip-optional-pointer": true
                              },
                              "deleted_at": {
                                "description": "Timestamp when the environment was soft deleted. Null while the environment remains active.",
                                "nullable": true,
                                "x-oapi-codegen-extra-tags": {
                                  "db": "deleted_at",
                                  "yaml": "deleted_at"
                                },
                                "x-go-type": "core.NullTime",
                                "x-go-import": "database/sql",
                                "x-order": 10,
                                "x-go-type-import": {
                                  "name": "meshcore",
                                  "path": "github.com/meshery/schemas/models/core"
                                },
                                "type": "string",
                                "format": "date-time",
                                "x-go-type-skip-optional-pointer": true
                              }
                            }
                          },
                          "x-oapi-codegen-extra-tags": {
                            "db": "-",
                            "yaml": "environments",
                            "gorm": "-"
                          },
                          "x-go-type-skip-optional-pointer": true,
                          "x-order": 13
                        },
                        "schemaVersion": {
                          "description": "Specifies the version of the schema used for the definition.",
                          "x-order": 14,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "schemaVersion",
                            "db": "-",
                            "gorm": "-"
                          },
                          "default": "connections.meshery.io/v1beta1",
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 100,
                          "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                          "example": [
                            "v1",
                            "v1alpha1",
                            "v2beta3",
                            "v1.custom-suffix",
                            "models.meshery.io/v1beta1",
                            "capability.meshery.io/v1alpha1"
                          ]
                        }
                      }
                    },
                    "registrantId": {
                      "description": "ID of the registrant.",
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "connection_id",
                        "json": "connection_id",
                        "gorm": "column:connection_id"
                      },
                      "x-order": 8,
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "categoryId": {
                      "description": "ID of the category.",
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "-",
                        "json": "-",
                        "gorm": "categoryID"
                      },
                      "x-order": 8,
                      "type": "string",
                      "format": "uuid",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "category": {
                      "x-order": 9,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "category",
                        "json": "category",
                        "gorm": "foreignKey:CategoryId;references:ID"
                      },
                      "x-go-type": "categoryv1beta1.CategoryDefinition",
                      "x-go-type-import": {
                        "path": "github.com/meshery/schemas/models/v1beta1/category",
                        "name": "categoryv1beta1"
                      },
                      "$id": "https://schemas.meshery.io/category.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "type": "object",
                      "additionalProperties": false,
                      "description": "Category of the model.",
                      "required": [
                        "id",
                        "name",
                        "metadata"
                      ],
                      "properties": {
                        "id": {
                          "x-order": 1,
                          "type": "string",
                          "format": "uuid",
                          "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                          "x-go-type": "uuid.UUID",
                          "x-go-type-import": {
                            "path": "github.com/gofrs/uuid"
                          }
                        },
                        "name": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "name",
                            "json": "name",
                            "gorm": "name"
                          },
                          "default": "Uncategorized",
                          "description": "The category of the model that determines the main grouping.",
                          "helperText": "Select a model category",
                          "enum": [
                            "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"
                          ],
                          "x-order": 2
                        },
                        "metadata": {
                          "description": "Additional metadata associated with the category.",
                          "type": "object",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "metadata,omitempty",
                            "json": "metadata,omitempty",
                            "gorm": "type:bytes;serializer:json"
                          },
                          "x-order": 3
                        }
                      }
                    },
                    "subCategory": {
                      "x-order": 10,
                      "x-go-type": "subcategoryv1beta1.SubCategoryDefinition",
                      "x-go-type-import": {
                        "path": "github.com/meshery/schemas/models/v1beta1/subcategory",
                        "name": "subcategoryv1beta1"
                      },
                      "$id": "https://schemas.meshery.io/category.yaml",
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "type": "string",
                      "title": "SubCategory",
                      "description": "Sub category of the model determines the secondary grouping.",
                      "default": "Uncategorized",
                      "enum": [
                        "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"
                      ],
                      "minLength": 1,
                      "maxLength": 100,
                      "x-oapi-codegen-extra-tags": {
                        "yaml": "subCategory",
                        "json": "subCategory"
                      }
                    },
                    "metadata": {
                      "type": "object",
                      "description": "Metadata containing additional information associated with the model.",
                      "required": [
                        "svgWhite",
                        "svgColor"
                      ],
                      "properties": {
                        "capabilities": {
                          "type": "array",
                          "description": "Capabilities associated with the model",
                          "items": {
                            "x-go-type": "capabilityv1alpha1.Capability",
                            "x-go-type-import": {
                              "path": "github.com/meshery/schemas/models/v1alpha1/capability",
                              "name": "capabilityv1alpha1"
                            },
                            "$id": "https://schemas.meshery.io/capability.yaml",
                            "$schema": "http://json-schema.org/draft-07/schema#",
                            "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                            "additionalProperties": false,
                            "type": "object",
                            "required": [
                              "description",
                              "schemaVersion",
                              "version",
                              "displayName",
                              "kind",
                              "type",
                              "subType",
                              "entityState",
                              "key",
                              "status"
                            ],
                            "x-oapi-codegen-extra-tags": {
                              "gorm": "type:bytes;serializer:json"
                            },
                            "properties": {
                              "schemaVersion": {
                                "description": "Specifies the version of the schema to which the capability definition conforms.",
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 100,
                                "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                                "example": [
                                  "v1",
                                  "v1alpha1",
                                  "v2beta3",
                                  "v1.custom-suffix",
                                  "models.meshery.io/v1beta1",
                                  "capability.meshery.io/v1alpha1"
                                ]
                              },
                              "version": {
                                "description": "Version of the capability definition.",
                                "type": "string",
                                "minLength": 5,
                                "maxLength": 100,
                                "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                              },
                              "displayName": {
                                "description": "Name of the capability in human-readible format.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "description": {
                                "type": "string",
                                "description": "A written representation of the purpose and characteristics of the capability.",
                                "maxLength": 5000
                              },
                              "kind": {
                                "description": "Top-level categorization of the capability",
                                "additionalProperties": false,
                                "anyOf": [
                                  {
                                    "const": "action",
                                    "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                                  },
                                  {
                                    "const": "mutate",
                                    "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                                  },
                                  {
                                    "const": "view",
                                    "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                                  },
                                  {
                                    "const": "interaction",
                                    "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                                  }
                                ],
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "type": {
                                "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "subType": {
                                "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "key": {
                                "description": "Key that backs the capability.",
                                "type": "string",
                                "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                              },
                              "entityState": {
                                "description": "State of the entity in which the capability is applicable.",
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "declaration",
                                    "instance"
                                  ],
                                  "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                                  "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                                }
                              },
                              "status": {
                                "type": "string",
                                "description": "Status of the capability",
                                "default": "enabled",
                                "enum": [
                                  "enabled",
                                  "disabled"
                                ]
                              },
                              "metadata": {
                                "type": "object",
                                "description": "Metadata contains additional information associated with the capability. Extension point.",
                                "additionalProperties": true
                              }
                            },
                            "default": [
                              {
                                "description": "Configure the visual styles for the component",
                                "displayName": "Styling",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "mutate",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "",
                                "type": "style",
                                "version": "0.7.0"
                              },
                              {
                                "description": "Change the shape of the component",
                                "displayName": "Change Shape",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "mutate",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "shape",
                                "type": "style",
                                "version": "0.7.0"
                              },
                              {
                                "description": "Drag and Drop a component into a parent component in graph view",
                                "displayName": "Compound Drag And Drop",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "interaction",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "compoundDnd",
                                "type": "graph",
                                "version": "0.7.0"
                              },
                              {
                                "description": "Add text to nodes body",
                                "displayName": "Body Text",
                                "entityState": [
                                  "declaration"
                                ],
                                "key": "",
                                "kind": "mutate",
                                "schemaVersion": "capability.meshery.io/v1beta1",
                                "status": "enabled",
                                "subType": "body-text",
                                "type": "style",
                                "version": "0.7.0"
                              }
                            ]
                          },
                          "x-order": 1
                        },
                        "isAnnotation": {
                          "type": "boolean",
                          "description": "Indicates whether the model and its entities should be treated as deployable entities or as logical representations.",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "isAnnotation",
                            "json": "isAnnotation"
                          },
                          "x-order": 2,
                          "default": false
                        },
                        "primaryColor": {
                          "type": "string",
                          "description": "Primary color associated with the model.",
                          "minLength": 1,
                          "maxLength": 50,
                          "default": "#00b39f",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "primaryColor",
                            "json": "primaryColor"
                          },
                          "x-order": 3
                        },
                        "secondaryColor": {
                          "type": "string",
                          "description": "Secondary color associated with the model.",
                          "minLength": 1,
                          "maxLength": 50,
                          "default": "#00D3A9",
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "secondaryColor",
                            "json": "secondaryColor"
                          },
                          "x-order": 4
                        },
                        "svgWhite": {
                          "type": "string",
                          "description": "SVG representation of the model in white color.",
                          "minLength": 1,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "svgWhite",
                            "json": "svgWhite"
                          },
                          "x-order": 5,
                          "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>"
                        },
                        "svgColor": {
                          "type": "string",
                          "description": "SVG representation of the model in colored format.",
                          "minLength": 1,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "svgColor",
                            "json": "svgColor"
                          },
                          "x-order": 6,
                          "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>"
                        },
                        "svgComplete": {
                          "type": "string",
                          "description": "SVG representation of the complete model.",
                          "minLength": 1,
                          "x-oapi-codegen-extra-tags": {
                            "yaml": "svgComplete",
                            "json": "svgComplete"
                          },
                          "x-order": 7
                        },
                        "shape": {
                          "x-order": 8,
                          "type": "string",
                          "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)",
                          "enum": [
                            "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"
                          ]
                        }
                      },
                      "x-oapi-codegen-extra-tags": {
                        "gorm": "type:bytes;serializer:json",
                        "json": "metadata",
                        "yaml": "metadata"
                      },
                      "x-order": 11,
                      "additionalProperties": true
                    },
                    "model": {
                      "x-oapi-codegen-extra-tags": {
                        "gorm": "type:bytes;serializer:json"
                      },
                      "x-order": 12,
                      "type": "object",
                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                      "required": [
                        "version"
                      ],
                      "properties": {
                        "version": {
                          "description": "Version of the model as defined by the registrant.",
                          "x-oapi-codegen-extra-tags": {
                            "json": "version"
                          },
                          "x-order": 1,
                          "type": "string",
                          "minLength": 5,
                          "maxLength": 100,
                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                        }
                      }
                    },
                    "relationships": {
                      "type": "array",
                      "x-go-type": "interface{}",
                      "x-oapi-codegen-extra-tags": {
                        "gorm": "-",
                        "json": "relationships",
                        "yaml": "relationships"
                      },
                      "description": "The relationships of the model."
                    },
                    "components": {
                      "type": "array",
                      "x-go-type": "interface{}",
                      "x-oapi-codegen-extra-tags": {
                        "gorm": "-",
                        "json": "components",
                        "yaml": "components"
                      },
                      "description": "The components of the model."
                    },
                    "componentsCount": {
                      "type": "integer",
                      "description": "Number of components associated with the model.",
                      "x-order": 13,
                      "x-oapi-codegen-extra-tags": {
                        "json": "components_count",
                        "yaml": "components_count",
                        "gorm": "-"
                      },
                      "default": 0,
                      "minimum": 0
                    },
                    "relationshipsCount": {
                      "type": "integer",
                      "description": "Number of relationships associated with the model.",
                      "x-order": 13,
                      "x-oapi-codegen-extra-tags": {
                        "gorm": "-",
                        "json": "relationships_count",
                        "yaml": "relationships_count"
                      },
                      "default": 0,
                      "minimum": 0
                    },
                    "created_at": {
                      "x-order": 14,
                      "description": "Timestamp when the resource was created.",
                      "x-go-type": "time.Time",
                      "type": "string",
                      "format": "date-time",
                      "x-go-name": "CreatedAt",
                      "x-oapi-codegen-extra-tags": {
                        "db": "created_at",
                        "yaml": "created_at"
                      },
                      "x-go-type-skip-optional-pointer": true
                    },
                    "updated_at": {
                      "x-order": 15,
                      "description": "Timestamp when the resource was updated.",
                      "x-go-type": "time.Time",
                      "type": "string",
                      "format": "date-time",
                      "x-go-name": "UpdatedAt",
                      "x-oapi-codegen-extra-tags": {
                        "db": "updated_at",
                        "yaml": "updated_at"
                      },
                      "x-go-type-skip-optional-pointer": true
                    }
                  },
                  "required": [
                    "id",
                    "schemaVersion",
                    "displayName",
                    "status",
                    "subCategory",
                    "model",
                    "name",
                    "description",
                    "version",
                    "registrant",
                    "category",
                    "categoryId",
                    "registrantId",
                    "relationshipsCount",
                    "componentsCount",
                    "components",
                    "relationships"
                  ]
                },
                "modelReference": {
                  "x-go-type": "modelv1beta1.ModelReference",
                  "x-go-type-import": {
                    "path": "github.com/meshery/schemas/models/v1beta1/model",
                    "name": "modelv1beta1"
                  },
                  "x-order": 8,
                  "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",
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "-"
                  },
                  "x-generate-db-helpers": true,
                  "type": "object",
                  "required": [
                    "id",
                    "name",
                    "version",
                    "displayName",
                    "model",
                    "registrant"
                  ],
                  "properties": {
                    "id": {
                      "type": "string",
                      "format": "uuid",
                      "description": "A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.",
                      "x-go-type": "uuid.UUID",
                      "x-go-type-import": {
                        "path": "github.com/gofrs/uuid"
                      }
                    },
                    "name": {
                      "type": "string",
                      "description": "The unique name for the model within the scope of a registrant.",
                      "pattern": "^[a-z0-9-]+$",
                      "examples": [
                        "cert-manager"
                      ]
                    },
                    "version": {
                      "description": "Version of the model definition.",
                      "type": "string",
                      "minLength": 5,
                      "maxLength": 100,
                      "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                    },
                    "displayName": {
                      "type": "string",
                      "description": "Human-readable name for the model.",
                      "minLength": 1,
                      "maxLength": 100,
                      "pattern": "^[a-zA-Z0-9 ]+$",
                      "examples": [
                        "Cert Manager"
                      ]
                    },
                    "model": {
                      "type": "object",
                      "description": "Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31).",
                      "required": [
                        "version"
                      ],
                      "properties": {
                        "version": {
                          "description": "Version of the model as defined by the registrant.",
                          "x-oapi-codegen-extra-tags": {
                            "json": "version"
                          },
                          "x-order": 1,
                          "type": "string",
                          "minLength": 5,
                          "maxLength": 100,
                          "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                        }
                      }
                    },
                    "registrant": {
                      "x-go-type": "RegistrantReference",
                      "x-oapi-codegen-extra-tags": {
                        "json": "registrant"
                      },
                      "type": "object",
                      "required": [
                        "kind"
                      ],
                      "properties": {
                        "kind": {
                          "type": "string",
                          "description": "Kind of the registrant.",
                          "maxLength": 255
                        }
                      }
                    }
                  }
                },
                "modelId": {
                  "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.",
                  "x-go-name": "ModelID",
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "index:idx_component_definition_dbs_model_id,column:model_id",
                    "db": "model_id",
                    "yaml": "-",
                    "json": "-"
                  },
                  "type": "string",
                  "format": "uuid",
                  "x-go-type": "uuid.UUID",
                  "x-go-type-import": {
                    "path": "github.com/gofrs/uuid"
                  }
                },
                "styles": {
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "type:bytes;serializer:json",
                    "yaml": "styles",
                    "json": "styles"
                  },
                  "x-go-type": "core.ComponentStyles",
                  "x-go-type-import": {
                    "path": "github.com/meshery/schemas/models/core",
                    "name": "core"
                  },
                  "x-order": 8,
                  "type": "object",
                  "description": "Visualization styles for a component",
                  "required": [
                    "shape",
                    "primaryColor",
                    "svgColor",
                    "svgWhite",
                    "svgComplete"
                  ],
                  "allOf": [
                    {
                      "type": "object",
                      "description": "Common styles for all entities",
                      "additionalProperties": true,
                      "required": [
                        "primaryColor",
                        "svgColor",
                        "svgWhite",
                        "svgComplete"
                      ],
                      "properties": {
                        "primaryColor": {
                          "type": "string",
                          "description": "Primary color of the component used for UI representation.",
                          "maxLength": 500
                        },
                        "secondaryColor": {
                          "type": "string",
                          "description": "Secondary color of the entity used for UI representation.",
                          "maxLength": 500
                        },
                        "svgWhite": {
                          "type": "string",
                          "description": "White SVG of the entity used for UI representation on dark background.",
                          "maxLength": 500
                        },
                        "svgColor": {
                          "type": "string",
                          "description": "Colored SVG of the entity used for UI representation on light background.",
                          "maxLength": 500
                        },
                        "svgComplete": {
                          "type": "string",
                          "description": "Complete SVG of the entity used for UI representation, often inclusive of background.",
                          "maxLength": 500
                        },
                        "color": {
                          "type": "string",
                          "description": "The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 500
                        },
                        "textOpacity": {
                          "type": "number",
                          "description": "The opacity of the label text, including its outline.",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "fontFamily": {
                          "type": "string",
                          "description": "A comma-separated list of font names to use on the label text.",
                          "maxLength": 500
                        },
                        "fontSize": {
                          "type": "string",
                          "description": "The size of the label text.",
                          "maxLength": 500
                        },
                        "fontStyle": {
                          "type": "string",
                          "description": "A CSS font style to be applied to the label text.",
                          "maxLength": 500
                        },
                        "fontWeight": {
                          "type": "string",
                          "description": "A CSS font weight to be applied to the label text.",
                          "maxLength": 500
                        },
                        "textTransform": {
                          "type": "string",
                          "description": "A transformation to apply to the label text",
                          "enum": [
                            "none",
                            "uppercase",
                            "lowercase"
                          ]
                        },
                        "opacity": {
                          "type": "number",
                          "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.",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "zIndex": {
                          "type": "integer",
                          "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.",
                          "minimum": 0
                        },
                        "label": {
                          "type": "string",
                          "description": "The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id",
                          "maxLength": 500
                        },
                        "animation": {
                          "type": "object",
                          "description": "The animation to apply to the element. example ripple,bounce,etc"
                        }
                      }
                    },
                    {
                      "type": "object",
                      "properties": {
                        "shape": {
                          "type": "string",
                          "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)",
                          "enum": [
                            "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"
                          ]
                        },
                        "position": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "x",
                            "y"
                          ],
                          "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.",
                          "properties": {
                            "x": {
                              "type": "number",
                              "description": "The x-coordinate of the node.",
                              "minimum": -1000000,
                              "maximum": 1000000,
                              "x-go-type": "float64"
                            },
                            "y": {
                              "type": "number",
                              "description": "The y-coordinate of the node.",
                              "minimum": -1000000,
                              "maximum": 1000000,
                              "x-go-type": "float64"
                            }
                          }
                        },
                        "bodyText": {
                          "type": "string",
                          "description": "The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id",
                          "maxLength": 500
                        },
                        "bodyTextWrap": {
                          "type": "string",
                          "description": "How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.",
                          "enum": [
                            "none",
                            "wrap",
                            "ellipsis"
                          ]
                        },
                        "bodyTextMaxWidth": {
                          "type": "string",
                          "description": "The maximum width for wrapping text in the node.",
                          "maxLength": 50
                        },
                        "bodyTextOpacity": {
                          "type": "number",
                          "description": "The opacity of the node's body text, including its outline.",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "bodyTextBackgroundColor": {
                          "type": "string",
                          "description": "The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 100
                        },
                        "bodyTextFontSize": {
                          "type": "number",
                          "description": "The size of the node's body text.",
                          "minimum": 0
                        },
                        "bodyTextColor": {
                          "type": "string",
                          "description": "The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 100
                        },
                        "bodyTextFontWeight": {
                          "type": "string",
                          "description": "A CSS font weight to be applied to the node's body text.",
                          "maxLength": 50
                        },
                        "bodyTextHorizontalAlign": {
                          "type": "string",
                          "description": "A CSS horizontal alignment to be applied to the node's body text.",
                          "maxLength": 50
                        },
                        "bodyTextDecoration": {
                          "type": "string",
                          "description": "A CSS text decoration to be applied to the node's body text.",
                          "maxLength": 100
                        },
                        "bodyTextVerticalAlign": {
                          "type": "string",
                          "description": "A CSS vertical alignment to be applied to the node's body text.",
                          "maxLength": 50
                        },
                        "width": {
                          "type": "number",
                          "description": "The width of the node's body or the width of an edge's line.",
                          "minimum": 0
                        },
                        "height": {
                          "type": "number",
                          "description": "The height of the node's body",
                          "minimum": 0
                        },
                        "backgroundImage": {
                          "type": "string",
                          "format": "uri",
                          "description": "The URL that points to the image to show in the node.",
                          "maxLength": 2048
                        },
                        "backgroundColor": {
                          "type": "string",
                          "description": "The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 100
                        },
                        "backgroundBlacken": {
                          "type": "number",
                          "description": "Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1.",
                          "maximum": 1,
                          "minimum": -1
                        },
                        "backgroundOpacity": {
                          "type": "number",
                          "description": "The opacity level of the node's background colour",
                          "maximum": 1,
                          "minimum": 0
                        },
                        "backgroundPositionX": {
                          "type": "string",
                          "description": "The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                          "maxLength": 50
                        },
                        "backgroundPositionY": {
                          "type": "string",
                          "description": "The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                          "maxLength": 50
                        },
                        "backgroundOffsetX": {
                          "type": "string",
                          "description": "The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                          "maxLength": 50
                        },
                        "backgroundOffsetY": {
                          "type": "string",
                          "description": "The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px)",
                          "maxLength": 50
                        },
                        "backgroundFit": {
                          "type": "string",
                          "description": "How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.",
                          "enum": [
                            "none",
                            "contain",
                            "cover"
                          ]
                        },
                        "backgroundClip": {
                          "type": "string",
                          "description": "How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.",
                          "enum": [
                            "none",
                            "node",
                            "node-border"
                          ]
                        },
                        "backgroundWidthRelativeTo": {
                          "type": "string",
                          "description": "How the background image's width is determined. Can be 'none', 'inner', or 'outer'.",
                          "enum": [
                            "none",
                            "inner",
                            "outer"
                          ]
                        },
                        "backgroundHeightRelativeTo": {
                          "type": "string",
                          "description": "How the background image's height is determined. Can be 'none', 'inner', or 'outer'.",
                          "enum": [
                            "none",
                            "inner",
                            "outer"
                          ]
                        },
                        "borderWidth": {
                          "type": "number",
                          "description": "The size of the node's border.",
                          "minimum": 0
                        },
                        "borderStyle": {
                          "type": "string",
                          "description": "The style of the node's border",
                          "enum": [
                            "solid",
                            "dotted",
                            "dashed",
                            "double"
                          ]
                        },
                        "borderColor": {
                          "type": "string",
                          "description": "The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 100
                        },
                        "borderOpacity": {
                          "type": "number",
                          "description": "The opacity of the node's border",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "padding": {
                          "type": "number",
                          "description": "The amount of padding around all sides of the node.",
                          "minimum": 0
                        },
                        "textHalign": {
                          "type": "string",
                          "description": "The horizontal alignment of a node's label",
                          "enum": [
                            "left",
                            "center",
                            "right"
                          ]
                        },
                        "textValign": {
                          "type": "string",
                          "description": "The vertical alignment of a node's label",
                          "enum": [
                            "top",
                            "center",
                            "bottom"
                          ]
                        },
                        "ghost": {
                          "type": "string",
                          "description": "Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.",
                          "default": "no",
                          "enum": [
                            "yes",
                            "no"
                          ]
                        },
                        "activeBgColor": {
                          "type": "string",
                          "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.",
                          "maxLength": 100
                        },
                        "activeBgOpacity": {
                          "type": "string",
                          "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                          "maxLength": 50
                        },
                        "activeBgSize": {
                          "type": "string",
                          "description": "The opacity of the active background indicator. Selector needs to be *core*.",
                          "maxLength": 50
                        },
                        "selectionBoxColor": {
                          "type": "string",
                          "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.",
                          "maxLength": 100
                        },
                        "selectionBoxBorderWidth": {
                          "type": "number",
                          "description": "The size of the border on the selection box. Selector needs to be *core*",
                          "minimum": 0
                        },
                        "selectionBoxOpacity": {
                          "type": "number",
                          "description": "The opacity of the selection box. Selector needs to be *core*",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "outsideTextureBgColor": {
                          "type": "string",
                          "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.",
                          "maxLength": 100
                        },
                        "outsideTextureBgOpacity": {
                          "type": "number",
                          "description": "The opacity of the area outside the viewport texture. Selector needs to be *core*",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "shapePolygonPoints": {
                          "type": "string",
                          "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 )",
                          "maxLength": 2000
                        },
                        "menuBackgroundColor": {
                          "type": "string",
                          "description": "The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 100
                        },
                        "menuBackgroundOpacity": {
                          "type": "number",
                          "description": "The opacity of the background of the component menu.",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "menuForgroundColor": {
                          "type": "string",
                          "description": "The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g.",
                          "maxLength": 100
                        }
                      }
                    }
                  ]
                },
                "capabilities": {
                  "x-order": 9,
                  "type": "array",
                  "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.",
                  "items": {
                    "x-go-type": "capabilityv1beta1.Capability",
                    "x-go-type-import": {
                      "path": "github.com/meshery/schemas/models/v1beta1/capability",
                      "name": "capabilityv1beta1"
                    },
                    "$id": "https://schemas.meshery.io/capability.yaml",
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "description": "Meshery manages entities 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. Entities may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.",
                    "additionalProperties": false,
                    "type": "object",
                    "required": [
                      "description",
                      "schemaVersion",
                      "version",
                      "displayName",
                      "kind",
                      "type",
                      "subType",
                      "entityState",
                      "key",
                      "status"
                    ],
                    "x-oapi-codegen-extra-tags": {
                      "gorm": "type:bytes;serializer:json"
                    },
                    "properties": {
                      "schemaVersion": {
                        "description": "Specifies the version of the schema to which the capability definition conforms.",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 100,
                        "pattern": "^([a-z][a-z0-9.-]*\\/)?v(alpha|beta|[0-9]+(alpha[0-9]*|beta[0-9]*|rc[0-9]*)?)([.-][a-z0-9]+)*$",
                        "example": [
                          "v1",
                          "v1alpha1",
                          "v2beta3",
                          "v1.custom-suffix",
                          "models.meshery.io/v1beta1",
                          "capability.meshery.io/v1alpha1"
                        ]
                      },
                      "version": {
                        "description": "Version of the capability definition.",
                        "type": "string",
                        "minLength": 5,
                        "maxLength": 100,
                        "pattern": "^[a-z0-9]+.[0-9]+.[0-9]+(-[0-9A-Za-z-]+(.[0-9A-Za-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
                      },
                      "displayName": {
                        "description": "Name of the capability in human-readible format.",
                        "type": "string",
                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                      },
                      "description": {
                        "type": "string",
                        "description": "A written representation of the purpose and characteristics of the capability.",
                        "maxLength": 5000
                      },
                      "kind": {
                        "description": "Top-level categorization of the capability",
                        "additionalProperties": false,
                        "anyOf": [
                          {
                            "const": "action",
                            "description": "For capabilities related to executing actions on entities. Example: initiate log streaming on a Pod. Example: initiate deployment of a component."
                          },
                          {
                            "const": "mutate",
                            "description": "For capabilities related to mutating an entity. Example: the ability to change the configuration of a component."
                          },
                          {
                            "const": "view",
                            "description": "For capabilities related to viewing an entity. Example: the ability to view a components configuration."
                          },
                          {
                            "const": "interaction",
                            "description": "Catch all for capabilities related to interaction with entities. Example: the ability for a component to be dragged and dropped. Example: supports event bubbling to parent components. "
                          }
                        ],
                        "type": "string",
                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                      },
                      "type": {
                        "description": "Classification of capabilities. Used to group capabilities similar in nature.",
                        "type": "string",
                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                      },
                      "subType": {
                        "description": "Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability.",
                        "type": "string",
                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                      },
                      "key": {
                        "description": "Key that backs the capability.",
                        "type": "string",
                        "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$"
                      },
                      "entityState": {
                        "description": "State of the entity in which the capability is applicable.",
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "declaration",
                            "instance"
                          ],
                          "pattern": "^[a-zA-Z_][a-zA-Z0-9_-]*[a-zA-Z0-9_]$",
                          "description": "A string starting with an alphanumeric character. Spaces and hyphens allowed."
                        }
                      },
                      "status": {
                        "type": "string",
                        "description": "Status of the capability",
                        "default": "enabled",
                        "enum": [
                          "enabled",
                          "disabled"
                        ]
                      },
                      "metadata": {
                        "type": "object",
                        "description": "Metadata contains additional information associated with the capability. Extension point.",
                        "additionalProperties": true
                      }
                    },
                    "default": [
                      {
                        "description": "Configure the visual styles for the component",
                        "displayName": "Styling",
                        "entityState": [
                          "declaration"
                        ],
                        "key": "",
                        "kind": "mutate",
                        "schemaVersion": "capability.meshery.io/v1beta1",
                        "status": "enabled",
                        "subType": "",
                        "type": "style",
                        "version": "0.7.0"
                      },
                      {
                        "description": "Change the shape of the component",
                        "displayName": "Change Shape",
                        "entityState": [
                          "declaration"
                        ],
                        "key": "",
                        "kind": "mutate",
                        "schemaVersion": "capability.meshery.io/v1beta1",
                        "status": "enabled",
                        "subType": "shape",
                        "type": "style",
                        "version": "0.7.0"
                      },
                      {
                        "description": "Drag and Drop a component into a parent component in graph view",
                        "displayName": "Compound Drag And Drop",
                        "entityState": [
                          "declaration"
                        ],
                        "key": "",
                        "kind": "interaction",
                        "schemaVersion": "capability.meshery.io/v1beta1",
                        "status": "enabled",
                        "subType": "compoundDnd",
                        "type": "graph",
                        "version": "0.7.0"
                      },
                      {
                        "description": "Add text to nodes body",
                        "displayName": "Body Text",
                        "entityState": [
                          "declaration"
                        ],
                        "key": "",
                        "kind": "mutate",
                        "schemaVersion": "capability.meshery.io/v1beta1",
                        "status": "enabled",
                        "subType": "body-text",
                        "type": "style",
                        "version": "0.7.0"
                      }
                    ]
                  },
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "type:bytes;serializer:json",
                    "yaml": "capabilities",
                    "json": "capabilities"
                  },
                  "default": [
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Performance Test",
                      "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
                      "kind": "action",
                      "type": "operator",
                      "subType": "perf-test",
                      "key": "",
                      "entityState": [
                        "instance"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Workload Configuration",
                      "description": "Configure the workload specific setting of a component",
                      "kind": "mutate",
                      "type": "configuration",
                      "subType": "config",
                      "key": "",
                      "entityState": [
                        "declaration"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Labels and Annotations Configuration",
                      "description": "Configure Labels And Annotations for the component",
                      "kind": "mutate",
                      "type": "configuration",
                      "subType": "labels-and-annotations",
                      "key": "",
                      "entityState": [
                        "declaration"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Relationships",
                      "description": "View relationships for the component",
                      "kind": "view",
                      "type": "configuration",
                      "subType": "relationship",
                      "key": "",
                      "entityState": [
                        "declaration",
                        "instance"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Json Schema",
                      "description": "View Component Definition ",
                      "kind": "view",
                      "type": "configuration",
                      "subType": "definition",
                      "key": "",
                      "entityState": [
                        "declaration",
                        "instance"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Styling",
                      "description": "Configure the visual styles for the component",
                      "kind": "mutate",
                      "type": "style",
                      "subType": "",
                      "key": "",
                      "entityState": [
                        "declaration"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Change Shape",
                      "description": "Change the shape of the component",
                      "kind": "mutate",
                      "type": "style",
                      "subType": "shape",
                      "key": "",
                      "entityState": [
                        "declaration"
                      ],
                      "status": "enabled",
                      "metadata": null
                    },
                    {
                      "schemaVersion": "capability.meshery.io/v1beta1",
                      "version": "0.7.0",
                      "displayName": "Compound Drag And Drop",
                      "description": "Drag and Drop a component into a parent component in graph view",
                      "kind": "interaction",
                      "type": "graph",
                      "subType": "compoundDnd",
                      "key": "",
                      "entityState": [
                        "declaration"
                      ],
                      "status": "enabled",
                      "metadata": null
                    }
                  ]
                },
                "status": {
                  "x-order": 10,
                  "type": "string",
                  "description": "Status of component, including:\n- 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.\n- maintenance: model is unavailable for a period of time.\n- enabled: model is available for use for all users of this Meshery Server.\n- ignored: model is unavailable for use for all users of this Meshery Server.",
                  "default": "enabled",
                  "enum": [
                    "ignored",
                    "enabled",
                    "duplicate",
                    "resolved",
                    "open"
                  ],
                  "x-oapi-codegen-extra-tags": {
                    "yaml": "status",
                    "json": "status"
                  }
                },
                "metadata": {
                  "x-order": 11,
                  "type": "object",
                  "description": "Metadata contains additional information associated with the component.",
                  "required": [
                    "genealogy",
                    "isAnnotation",
                    "isNamespaced",
                    "published",
                    "instanceDetails",
                    "configurationUISchema"
                  ],
                  "properties": {
                    "genealogy": {
                      "x-order": 1,
                      "type": "string",
                      "description": "Genealogy represents the various representational states of the component.",
                      "maxLength": 1000
                    },
                    "isAnnotation": {
                      "x-order": 2,
                      "type": "boolean",
                      "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.",
                      "default": false
                    },
                    "isNamespaced": {
                      "x-order": 3,
                      "type": "boolean",
                      "description": "Identifies whether the component is scoped to namespace or cluster wide."
                    },
                    "published": {
                      "x-order": 4,
                      "type": "boolean",
                      "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."
                    },
                    "instanceDetails": {
                      "x-order": 5,
                      "type": "object",
                      "description": "InstanceDetails contains information about the instance of the component."
                    },
                    "configurationUISchema": {
                      "x-order": 6,
                      "type": "string",
                      "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/ .",
                      "maxLength": 20000
                    }
                  },
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "type:bytes;serializer:json"
                  },
                  "additionalProperties": true
                },
                "configuration": {
                  "x-order": 12,
                  "description": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                  "type": "object",
                  "$comment": "The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema).",
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "type:bytes;serializer:json"
                  }
                },
                "component": {
                  "x-order": 13,
                  "x-oapi-codegen-extra-tags": {
                    "gorm": "type:bytes;serializer:json"
                  },
                  "x-go-type": "Component",
                  "description": "Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object.",
                  "type": "object",
                  "properties": {
                    "version": {
                      "type": "string",
                      "description": "Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod.",
                      "x-order": 1,
                      "maxLength": 500
                    },
                    "kind": {
                      "type": "string",
                      "description": "The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'.",
                      "x-order": 2,
                      "maxLength": 255
                    },
                    "schema": {
                      "type": "string",
                      "description": "JSON schema of the object as defined by the registrant.",
                      "x-order": 3,
                      "maxLength": 500
                    }
                  },
                  "required": [
                    "version",
                    "kind",
                    "schema"
                  ]
                },
                "createdAt": {
                  "description": "Timestamp when the component was created.",
                  "x-oapi-codegen-extra-tags": {
                    "db": "created_at",
                    "yaml": "createdAt",
                    "json": "createdAt"
                  },
                  "x-order": 14,
                  "x-go-type": "time.Time",
                  "type": "string",
                  "format": "date-time",
                  "x-go-name": "CreatedAt",
                  "x-go-type-skip-optional-pointer": true
                },
                "updatedAt": {
                  "description": "Timestamp when the component was last updated.",
                  "x-oapi-codegen-extra-tags": {
                    "db": "updated_at",
                    "yaml": "updatedAt",
                    "json": "updatedAt"
                  },
                  "x-order": 15,
                  "x-go-type": "time.Time",
                  "type": "string",
                  "format": "date-time",
                  "x-go-name": "UpdatedAt",
                  "x-go-type-skip-optional-pointer": true
                },
                "deletedAt": {
                  "description": "Timestamp when the component was soft-deleted. Null while the component is active.",
                  "x-oapi-codegen-extra-tags": {
                    "db": "deleted_at",
                    "json": "deletedAt,omitempty",
                    "yaml": "deletedAt,omitempty"
                  },
                  "x-order": 16,
                  "x-go-type": "NullTime",
                  "type": "string",
                  "format": "date-time",
                  "x-go-type-skip-optional-pointer": true
                }
              },
              "required": [
                "id",
                "displayName",
                "description",
                "schemaVersion",
                "format",
                "version",
                "configuration",
                "metadata",
                "model",
                "modelReference",
                "component",
                "createdAt",
                "updatedAt"
              ]
            },
            "description": "The generated component definitions."
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 65536
            },
            "description": "Errors encountered while generating components for this package."
          }
        }
      },
      "ValidationRequest": {
        "type": "object",
        "description": "Batch of values to validate against their schemas.",
        "required": [
          "validationItems"
        ],
        "properties": {
          "validationItems": {
            "type": "object",
            "description": "Items to validate, keyed by a caller-chosen identifier.",
            "additionalProperties": {
              "type": "object",
              "required": [
                "schema",
                "value"
              ],
              "properties": {
                "schema": {
                  "type": "string",
                  "description": "Schema (JSON Schema or CUE) to validate the value against.",
                  "maxLength": 1048576
                },
                "value": {
                  "type": "string",
                  "description": "Value to validate.",
                  "maxLength": 1048576
                },
                "valueType": {
                  "type": "string",
                  "x-enum-casing-exempt": true,
                  "enum": [
                    "JSON",
                    "YAML",
                    "JSONSCHEMA",
                    "CUE"
                  ],
                  "description": "Format of `value`."
                }
              }
            }
          }
        }
      },
      "ValidationItem": {
        "type": "object",
        "required": [
          "schema",
          "value"
        ],
        "properties": {
          "schema": {
            "type": "string",
            "description": "Schema (JSON Schema or CUE) to validate the value against.",
            "maxLength": 1048576
          },
          "value": {
            "type": "string",
            "description": "Value to validate.",
            "maxLength": 1048576
          },
          "valueType": {
            "type": "string",
            "x-enum-casing-exempt": true,
            "enum": [
              "JSON",
              "YAML",
              "JSONSCHEMA",
              "CUE"
            ],
            "description": "Format of `value`."
          }
        }
      },
      "ValidationResults": {
        "type": "object",
        "description": "Validation verdicts keyed by the request item identifiers.",
        "required": [
          "result"
        ],
        "properties": {
          "result": {
            "type": "object",
            "additionalProperties": {
              "type": "object",
              "required": [
                "isValid"
              ],
              "properties": {
                "isValid": {
                  "type": "boolean",
                  "description": "Whether the value conforms to its schema."
                },
                "errors": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 65536
                  },
                  "description": "Validation errors, empty when the value is valid."
                }
              }
            }
          }
        }
      },
      "ValidationResult": {
        "type": "object",
        "required": [
          "isValid"
        ],
        "properties": {
          "isValid": {
            "type": "boolean",
            "description": "Whether the value conforms to its schema."
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 65536
            },
            "description": "Validation errors, empty when the value is valid."
          }
        }
      },
      "EntityStatusPayload": {
        "type": "object",
        "description": "Request to update the lifecycle status of a registered entity.",
        "required": [
          "status"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the registered entity whose status is being updated.",
            "maxLength": 255
          },
          "status": {
            "type": "string",
            "description": "New status of the entity (e.g. `registered`, `ignored`).",
            "maxLength": 255
          },
          "displayName": {
            "type": "string",
            "description": "Display name of the entity, used in the resulting status-change event.",
            "maxLength": 255
          }
        }
      }
    }
  }
};

export default RegistrySchema;
