/** * @swagger {components.schemas} ResponseSystem { "description": "ShapeDiver API response of system-request.", "type": "object" } */ /** ShapeDiver API response of system-request. */ export interface ShapeDiverResponseSystem { /** * @swagger {components.schemas.ResponseSystem.properties} minions { "description": "System information about the Geometry Minions.", "type": "object", "$ref": "#/components/schemas/ResponseSystemMinions" } */ /** System information about the Geometry Minions. */ minions?: ShapeDiverResponseSystemMinions; /** * @swagger {components.schemas.ResponseSystem.properties} workers { "description": "System information about the Geometry Workers.", "type": "object", "$ref": "#/components/schemas/ResponseSystemWorkers" } */ /** System information about the Geometry Workers. */ workers?: ShapeDiverResponseSystemWorkers; } /** * @swagger {components.schemas} ResponseSystemMinions { "description": "Holds system information of all currently running Geometry Minion services.", "type": "object" } */ /** Holds system information of all currently running Geometry Minion services. */ export interface ShapeDiverResponseSystemMinions { /** * @swagger {components.schemas.ResponseSystemMinions.properties} instances { "description": "Information per instance.
A directory of process-IDs and process data.", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ResponseSystemMinionsProcess" } } * @swagger {components.schemas.ResponseSystemMinions} required [ "instances" ] */ /** Information per instance.
A directory of process-IDs and process data. */ instances: { [processId: string]: ShapeDiverResponseSystemMinionProcess }; /** * @swagger {components.schemas.ResponseSystemMinions.properties} tasks { "description": "Aggregated task information.
A directory of task types and task data.", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ResponseSystemMinionTask" } } * @swagger {components.schemas.ResponseSystemMinions} required [ "tasks" ] */ /** Aggregated task information.
A directory of task types and task data. */ tasks: { [taskType: string]: ShapeDiverResponseSystemMinionTask }; } /** * @swagger {components.schemas} ResponseSystemMinionsProcess { "description": "System information a single Geometry Minions process.", "type": "object" } */ /** System information a single Geometry Minions process. */ export interface ShapeDiverResponseSystemMinionProcess { /** * @swagger {components.schemas.ResponseSystemMinionsProcess.properties} tasks { "description": "Information about completed tasks, listed per task type.", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ResponseSystemMinionTask" } } * @swagger {components.schemas.ResponseSystemMinionsProcess} required [ "tasks" ] */ /** Information about completed tasks, listed per task type. */ tasks: { [taskType: string]: ShapeDiverResponseSystemMinionTask }; } /** * @swagger {components.schemas} ResponseSystemMinionTask { "description": "Statistics of a single Minion task.", "type": "object" } */ /** Statistics of a single Minion task. */ export interface ShapeDiverResponseSystemMinionTask { /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} avgDuration { "description": "Average duration of the task in milliseconds.", "type": "number" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "avgDuration" ] */ /** Average duration of the task in milliseconds. */ avgDuration: number; /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} maxDuration { "description": "Maximum duration of the task in milliseconds.", "type": "number" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "maxDuration" ] */ /** Maximum duration of the task in milliseconds. */ maxDuration: number; /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} avgIntervalDiff { "description": "Average difference between the configured task interval and the last global task execution in milliseconds.", "type": "number" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "avgIntervalDiff" ] */ /** Average difference between the configured task interval and the last global task execution in milliseconds. */ avgIntervalDiff: number; /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} maxIntervalDiff { "description": "Maximum difference between the configured task interval and the last global task execution in milliseconds.", "type": "number" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "maxIntervalDiff" ] */ /** Maximum difference between the configured task interval and the last global task execution in milliseconds. */ maxIntervalDiff: number; /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} interval { "description": "Execution interval of this task type in milliseconds.", "type": "number" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "interval" ] */ /** Execution interval of this task type in milliseconds. */ interval: number; /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} latest { "description": "Timestamp of the latest task completion, in ISO-8601 format.", "type": "string" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "latest" ] */ /** Timestamp of the latest task completion, in ISO-8601 format. */ latest: string; /** * @swagger {components.schemas.ResponseSystemMinionTask.properties} count { "description": "The number of aggregated items.", "type": "number" } * @swagger {components.schemas.ResponseSystemMinionTask} required [ "count" ] */ /** The number of aggregated items. */ count: number; } /** * @swagger {components.schemas} ResponseSystemWorkers { "description": "System information about the Geometry Workers.", "type": "object" } */ /** System information about the Geometry Workers. */ export interface ShapeDiverResponseSystemWorkers { /** * @swagger {components.schemas.ResponseSystemWorkers.properties} grasshopperVersion { "description": "Version of the Grasshopper application.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkers} required [ "grasshopperVersion" ] */ /** Version of the Grasshopper application. */ grasshopperVersion: string; /** * @swagger {components.schemas.ResponseSystemWorkers.properties} plugins { "description": "Holds information of all installed and allowed Grasshopper plugins.", "type": "object", "$ref": "#/components/schemas/ResponseSystemWorkerPlugins" } * @swagger {components.schemas.ResponseSystemWorkers} required [ "plugins" ] */ /** Holds information of all installed and allowed Grasshopper plugins. */ plugins: ShapeDiverResponseSystemWorkerPlugins; /** * @swagger {components.schemas.ResponseSystemWorkers.properties} rhinoVersion { "description": "Version of the Rhino application.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkers} required [ "rhinoVersion" ] */ /** Version of the Rhino application. */ rhinoVersion: string; /** * @swagger {components.schemas.ResponseSystemWorkers.properties} shapeDiverVersion { "description": "Version of the ShapeDiver worker plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkers} required [ "shapeDiverVersion" ] */ /** Version of the ShapeDiver worker plugin. */ shapeDiverVersion: string; } /** * @swagger {components.schemas} ResponseSystemWorkerPlugins { "description": "Holds information of all installed and allowed Grasshopper plugins.", "type": "object" } */ /** Holds information of all installed and allowed Grasshopper plugins. */ export interface ShapeDiverResponseSystemWorkerPlugins { /** * @swagger {components.schemas.ResponseSystemWorkerPlugins.properties} installed { "description": "Contains information about all installed Grasshopper plugins.", "type": "array", "items": { "$ref": "#/components/schemas/ResponseSystemWorkerPluginInstalled" } } * @swagger {components.schemas.ResponseSystemWorkerPlugins} required [ "installed" ] */ /** Contains information about all installed Grasshopper plugins. */ installed: ShapeDiverResponseSystemWorkerPluginInstalled[]; /** * @swagger {components.schemas.ResponseSystemWorkerPlugins.properties} allowed { "description": "Contains the model checking configuration for the Grasshopper plugins.", "type": "array", "items": { "$ref": "#/components/schemas/ResponseSystemWorkerPluginAllowed" } } * @swagger {components.schemas.ResponseSystemWorkerPlugins} required [ "allowed" ] */ /** Contains the model checking configuration for the Grasshopper plugins. */ allowed: ShapeDiverResponseSystemWorkerPluginAllowed[]; /** * @swagger {components.schemas.ResponseSystemWorkerPlugins.properties} inconsistent { "description": "Contains information about plugin inconsistencies.", "type": "array", "items": { "type": "string" } } * @swagger {components.schemas.ResponseSystemWorkerPlugins} required [ "inconsistent" ] */ /** Contains information about plugin inconsistencies. */ inconsistent: string[]; } /** * @swagger {components.schemas} ResponseSystemWorkerPluginInstalled { "description": "Contains information about all installed Grasshopper plugins.", "type": "object" } */ /** Contains information about all installed Grasshopper plugins. */ export interface ShapeDiverResponseSystemWorkerPluginInstalled { /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} id { "description": "ID of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "id" ] */ /** ID of the Grasshopper plugin. */ id: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} name { "description": "Name of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "name" ] */ /** Name of the Grasshopper plugin. */ name: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} version { "description": "Version of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "version" ] */ /** Version of the Grasshopper plugin. */ version: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} authorName { "description": "Name of the plugin author.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "authorName" ] */ /** Name of the plugin author. */ authorName: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} authorContact { "description": "Contact information of the plugin author (homepage URL, email address, etc.).", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "authorContact" ] */ /** Contact information of the plugin author (homepage URL, email address, etc.). */ authorContact: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} description { "description": "General description of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "description" ] */ /** General description of the Grasshopper plugin. */ description: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} assemblyVersion { "description": "Assembly version of the Grasshopper plugin DLL.
Please see the documentation for more information.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "assemblyVersion" ] */ /** * Assembly version of the Grasshopper plugin DLL. * [GH Docs](https://learn.microsoft.com/en-us/dotnet/api/system.reflection.assemblyname.version?view=net-8.0) */ assemblyVersion: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} assemblyFullName { "description": "Full assembly name of the Grasshopper plugin DLL.
Please see the documentation for more information.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "assemblyFullName" ] */ /** * Full assembly name of the Grasshopper plugin DLL. * [GH Docs](https://learn.microsoft.com/en-us/dotnet/api/system.reflection.assembly.fullname?view=net-8.0) */ assemblyFullName: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} isCoreLibrary { "description": "Gets whether this library is a Grasshopper core library. Core libraries are installed along with Grasshopper and thus should always be available anywhere.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "isCoreLibrary" ] */ /** * Gets whether this library is a Grasshopper core library. * Core libraries are installed along with Grasshopper and thus should always be available anywhere. */ isCoreLibrary: boolean; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} license { "description": "The license type of the plugin.
Please see the documentation for more information.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "license" ] */ /** * The license type of the plugin. * Please see the [documentation](https://developer.rhino3d.com/api/grasshopper/html/T_Grasshopper_Kernel_GH_LibraryLicense.htm) for more information. */ license: number; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} loadingMechanism { "description": "The mechanism used to load the plugin.
Please see the documentation for more information.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "loadingMechanism" ] */ /** * The mechanism used to load the plugin. * Please see the [documentation](https://developer.rhino3d.com/api/grasshopper/html/T_Grasshopper_Kernel_GH_LoadingMechanism.htm) for more information. */ loadingMechanism: number; /** * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled.properties} location { "description": "Installation path of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginInstalled} required [ "location" ] */ /** Installation path of the Grasshopper plugin. */ location: string; } /** * @swagger {components.schemas} ResponseSystemWorkerPluginAllowed { "description": "Contains the model checking configuration for the Grasshopper plugins.", "type": "object" } */ /** Contains the model checking configuration for the Grasshopper plugins. */ export interface ShapeDiverResponseSystemWorkerPluginAllowed { /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} id { "description": "ID of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "id" ] */ /** ID of the Grasshopper plugin. */ id: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} name { "description": "Name of the Grasshopper plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "name" ] */ /** Name of the Grasshopper plugin. */ name: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} minVersion { "description": "Minimum supported version of the plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "minVersion" ] */ /** Minimum supported version of the plugin. */ minVersion: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} maxVersion { "description": "Maximum supported version of the plugin.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "maxVersion" ] */ /** Maximum supported version of the plugin. */ maxVersion: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} authorName { "description": "Name of the plugin author.", "type": "string" } */ /** Name of the plugin author. */ authorName?: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} description { "description": "General description of the Grasshopper plugin.", "type": "string" } */ /** General description of the Grasshopper plugin. */ description?: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} description { "description": "Link to a website related to the plugin.", "type": "string" } */ /** Link to a website related to the plugin. */ href?: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} allowFallbackToAssemblyVersion { "description": "When true then GH_AssemblyInfo.AssemblyVersion may be used instead of GH_AssemblyInfo.Version for version checking.
Defaults to false.", "type": "boolean" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "allowFallbackToAssemblyVersion" ] */ /** * When `true` then `GH_AssemblyInfo.AssemblyVersion` may be used instead of `GH_AssemblyInfo.Version` for version checking. * Defaults to `false`. */ allowFallbackToAssemblyVersion: boolean; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} checkMajorMinorVersionOnly { "description": "When true then only the major and minor version numbers recorded in Grasshopper models will be checked.
Defaults to false.", "type": "boolean" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "checkMajorMinorVersionOnly" ] */ /** * When `true` then only the major and minor version numbers recorded in Grasshopper models will be checked. * Defaults to `false`. */ checkMajorMinorVersionOnly: boolean; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} checkIfInstalled { "description": "When false then the installation check of the plugin will be skipped.
Defaults to true.", "type": "boolean" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "checkIfInstalled" ] */ /** * When `false` then the installation check of the plugin will be skipped. * Defaults to `true`. */ checkIfInstalled: boolean; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} previousIds { "description": "List of previous plugin IDs supported by this plugin version. This is used for the obscure case of the plugin developer changing the plugin ID.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "previousIds" ] */ /** * List of previous plugin IDs supported by this plugin version. * This is used for the obscure case of the plugin developer changing the plugin ID. */ previousIds: string[]; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} allowedComponents { "description": "List of plugin components that are explicitly allowed. When this property is set, only the listed components are allowed, overruling the list in disallowedComponents.", "type": "array", "items": { "$ref": "#/components/schemas/ResponseSystemWorkerPluginComponent" } } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "allowedComponents" ] */ /** * List of plugin components that are explicitly allowed. When this property is not empty, only * the listed components are allowed, overruling the list in {@link disallowedComponents}. */ allowedComponents: ShapeDiverResponseSystemWorkerPluginComponent[]; /** * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed.properties} disallowedComponents { "description": "List of plugin components which may not be used. This list might be overruled by allowedComponents.", "type": "array", "items": { "$ref": "#/components/schemas/ResponseSystemWorkerPluginComponent" } } * @swagger {components.schemas.ResponseSystemWorkerPluginAllowed} required [ "disallowedComponents" ] */ /** * List of plugin components which may not be used. This list might be overruled by * {@link allowedComponents}. */ disallowedComponents: ShapeDiverResponseSystemWorkerPluginComponent[]; } /** * @swagger {components.schemas} ResponseSystemWorkerPluginComponent { "description": "A Grasshopper plugin component that may not be used.", "type": "object" } */ /** A Grasshopper plugin component that may not be used. */ export interface ShapeDiverResponseSystemWorkerPluginComponent { /** * @swagger {components.schemas.ResponseSystemWorkerPluginComponent.properties} id { "description": "ID of the plugin component.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginComponent} required [ "id" ] */ /** ID of the plugin component. */ id: string; /** * @swagger {components.schemas.ResponseSystemWorkerPluginComponent.properties} name { "description": "Name of the plugin component.", "type": "string" } * @swagger {components.schemas.ResponseSystemWorkerPluginComponent} required [ "name" ] */ /** Name of the plugin component. */ name: string; }