/**
* @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;
}