/**
 * This file was auto-generated by openapi-typescript.
 * Do not make direct changes to the file.
 */

export interface paths {
  '/v2/manager/queue/task': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    get?: never
    put?: never
    /**
     * Add task to queue
     * @description Adds a new task to the processing queue
     */
    post: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody: {
        content: {
          'application/json': components['schemas']['QueueTaskItem']
        }
      }
      responses: {
        /** @description Task queued successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Invalid task data */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/customnode/import_fail_info_bulk': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    get?: never
    put?: never
    /**
     * Get import failure info for multiple nodes
     * @description Retrieves recorded import failure information for a list of custom nodes.
     */
    post: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      /** @description A list of CNR IDs or repository URLs to check. */
      requestBody: {
        content: {
          'application/json': components['schemas']['ImportFailInfoBulkRequest']
        }
      }
      responses: {
        /** @description A dictionary containing the import failure information. */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': components['schemas']['ImportFailInfoBulkResponse']
          }
        }
        /** @description Bad Request. The request body is invalid. */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Internal Server Error. */
        500: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/customnode/install/git_url': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    get?: never
    put?: never
    /**
     * Install custom node via Git URL
     * @description Installs a custom node from a Git repository URL
     */
    post: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody: {
        content: {
          'text/plain': string
        }
      }
      responses: {
        /** @description Installation successful or already installed */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Installation failed */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Security policy violation */
        403: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/status': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get queue status
     * @description Returns the current status of the operation queue with optional client filtering
     */
    get: {
      parameters: {
        query?: {
          /** @description Client ID for filtering tasks */
          client_id?: components['parameters']['clientIdParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': components['schemas']['QueueStatus']
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/history': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get task history
     * @description Get task history with optional filtering
     */
    get: {
      parameters: {
        query?: {
          /** @description Batch history ID (for file-based history) */
          id?: string
          /** @description Client ID for filtering tasks */
          client_id?: components['parameters']['clientIdParam']
          /** @description Specific task ID to retrieve */
          ui_id?: components['parameters']['uiIdParam']
          /** @description Maximum number of items to return */
          max_items?: components['parameters']['maxItemsParam']
          /** @description Offset for pagination */
          offset?: components['parameters']['offsetParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json':
              | components['schemas']['HistoryResponse']
              | Record<string, never>
          }
        }
        /** @description Error retrieving history */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/history_list': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get available batch history files
     * @description Returns a list of batch history IDs sorted by modification time
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': components['schemas']['HistoryListResponse']
          }
        }
        /** @description Error retrieving history list */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/start': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Start queue processing
     * @description Starts processing the operation queue
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Processing started */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Processing already in progress */
        201: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/reset': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Reset queue
     * @description Resets the operation queue
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Queue reset successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/update_all': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Update all custom nodes
     * @description Queues update operations for all installed custom nodes
     */
    get: {
      parameters: {
        query: {
          /** @description Source mode (e.g., "local", "remote") */
          mode?: components['parameters']['modeParam']
          /** @description Required client ID that initiated the request */
          client_id: components['parameters']['clientIdRequiredParam']
          /** @description Required unique task identifier */
          ui_id: components['parameters']['uiIdRequiredParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Update queued successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Missing required parameters */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Processing already in progress */
        401: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Security policy violation */
        403: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/update_comfyui': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Update ComfyUI
     * @description Queues an update operation for ComfyUI itself
     */
    get: {
      parameters: {
        query: {
          /** @description Required client ID that initiated the request */
          client_id: components['parameters']['clientIdRequiredParam']
          /** @description Required unique task identifier */
          ui_id: components['parameters']['uiIdRequiredParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Update queued successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Missing required parameters */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/queue/install_model': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    get?: never
    put?: never
    /**
     * Install model
     * @description Queues installation of a model
     */
    post: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody: {
        content: {
          'application/json': components['schemas']['ModelMetadata']
        }
      }
      responses: {
        /** @description Installation queued successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Invalid model request */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Security policy violation */
        403: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/customnode/getmappings': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get node-to-package mappings
     * @description Provides unified mapping between nodes and node packages
     */
    get: {
      parameters: {
        query?: {
          /** @description Source mode (e.g., "local", "remote") */
          mode?: components['parameters']['modeParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': components['schemas']['ManagerMappings']
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/customnode/fetch_updates': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Check for updates
     * @description Fetches updates for custom nodes
     */
    get: {
      parameters: {
        query?: {
          /** @description Source mode (e.g., "local", "remote") */
          mode?: components['parameters']['modeParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description No updates available */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Updates found */
        201: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Error occurred */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/customnode/installed': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get installed custom nodes
     * @description Returns a list of installed node packages
     */
    get: {
      parameters: {
        query?: {
          /** @description Lists mode, default or imported */
          mode?: 'default' | 'imported'
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': components['schemas']['InstalledPacksResponse']
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/customnode/import_fail_info': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    get?: never
    put?: never
    /**
     * Get import failure information
     * @description Returns information about why a node failed to import
     */
    post: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody: {
        content: {
          'application/json': {
            cnr_id?: string
            url?: string
          }
        }
      }
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description No information available */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/snapshot/getlist': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get snapshot list
     * @description Returns a list of available snapshots
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': {
              items?: components['schemas']['SnapshotItem'][]
            }
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/snapshot/remove': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Remove snapshot
     * @description Removes a specified snapshot
     */
    get: {
      parameters: {
        query: {
          /** @description Target identifier */
          target: components['parameters']['targetParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Snapshot removed successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Error removing snapshot */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Security policy violation */
        403: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/snapshot/restore': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Restore snapshot
     * @description Restores a specified snapshot
     */
    get: {
      parameters: {
        query: {
          /** @description Target identifier */
          target: components['parameters']['targetParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Snapshot restoration scheduled */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Error restoring snapshot */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Security policy violation */
        403: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/snapshot/get_current': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get current snapshot
     * @description Returns the current system state as a snapshot
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': Record<string, never>
          }
        }
        /** @description Error creating snapshot */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/snapshot/save': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Save snapshot
     * @description Saves the current system state as a new snapshot
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Snapshot saved successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Error saving snapshot */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/comfyui_manager/comfyui_versions': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get ComfyUI versions
     * @description Returns available and current ComfyUI versions
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': {
              versions?: string[]
              current?: string
            }
          }
        }
        /** @description Error retrieving versions */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/comfyui_manager/comfyui_switch_version': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Switch ComfyUI version
     * @description Switches to a specified ComfyUI version
     */
    get: {
      parameters: {
        query: {
          /** @description Target version */
          ver: string
          /** @description Required client ID that initiated the request */
          client_id: components['parameters']['clientIdRequiredParam']
          /** @description Required unique task identifier */
          ui_id: components['parameters']['uiIdRequiredParam']
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Version switch queued successfully */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Missing required parameters or error switching version */
        400: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/db_mode': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get or set database mode
     * @description Gets or sets the database mode
     */
    get: {
      parameters: {
        query?: {
          /** @description New database mode */
          value?: 'channel' | 'local' | 'remote'
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Setting updated or current value returned */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'text/plain': string
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/policy/update': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get or set update policy
     * @description Gets or sets the update policy
     */
    get: {
      parameters: {
        query?: {
          /** @description New update policy */
          value?: 'stable' | 'nightly' | 'nightly-comfyui'
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Setting updated or current value returned */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'text/plain': string
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/channel_url_list': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get or set channel URL
     * @description Gets or sets the channel URL for custom node sources
     */
    get: {
      parameters: {
        query?: {
          /** @description New channel name */
          value?: string
        }
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Setting updated or channel list returned */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': {
              selected?: string
              list?: {
                name?: string
                url?: string
              }[]
            }
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/reboot': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Reboot ComfyUI
     * @description Restarts the ComfyUI server
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Reboot initiated */
        200: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
        /** @description Security policy violation */
        403: {
          headers: {
            [name: string]: unknown
          }
          content?: never
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/version': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Get manager version
     * @description Returns the current version of ComfyUI-Manager
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'text/plain': string
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
  '/v2/manager/is_legacy_manager_ui': {
    parameters: {
      query?: never
      header?: never
      path?: never
      cookie?: never
    }
    /**
     * Check if legacy manager UI is enabled
     * @description Returns whether the legacy manager UI is enabled
     */
    get: {
      parameters: {
        query?: never
        header?: never
        path?: never
        cookie?: never
      }
      requestBody?: never
      responses: {
        /** @description Successful operation */
        200: {
          headers: {
            [name: string]: unknown
          }
          content: {
            'application/json': {
              is_legacy_manager_ui?: boolean
            }
          }
        }
      }
    }
    put?: never
    post?: never
    delete?: never
    options?: never
    head?: never
    patch?: never
    trace?: never
  }
}
export type webhooks = Record<string, never>
export interface components {
  schemas: {
    QueueTaskItem: {
      /** @description Unique identifier for the task */
      ui_id: string
      /** @description Client identifier that initiated the task */
      client_id: string
      /**
       * @description Type of task being performed
       * @enum {string}
       */
      kind:
        | 'install'
        | 'uninstall'
        | 'update'
        | 'update-all'
        | 'update-comfyui'
        | 'fix'
        | 'disable'
        | 'enable'
        | 'install-model'
      params:
        | components['schemas']['InstallPackParams']
        | components['schemas']['UpdatePackParams']
        | components['schemas']['UpdateAllPacksParams']
        | components['schemas']['UpdateComfyUIParams']
        | components['schemas']['FixPackParams']
        | components['schemas']['UninstallPackParams']
        | components['schemas']['DisablePackParams']
        | components['schemas']['EnablePackParams']
        | components['schemas']['ModelMetadata']
    }
    TaskHistoryItem: {
      /** @description Unique identifier for the task */
      ui_id: string
      /** @description Client identifier that initiated the task */
      client_id: string
      /** @description Type of task that was performed */
      kind: string
      /**
       * Format: date-time
       * @description ISO timestamp when task completed
       */
      timestamp: string
      /** @description Task result message or details */
      result: string
      status?: components['schemas']['TaskExecutionStatus']
    }
    TaskExecutionStatus: {
      /**
       * @description Overall task execution status
       * @enum {string}
       */
      status_str: 'success' | 'error' | 'skip'
      /** @description Whether the task completed */
      completed: boolean
      /** @description Additional status messages */
      messages: string[]
    }
    TaskStateMessage: {
      /** @description Map of task IDs to their history items */
      history: {
        [key: string]: components['schemas']['TaskHistoryItem']
      }
      /** @description Currently executing tasks */
      running_queue: components['schemas']['QueueTaskItem'][]
      /** @description Tasks waiting to be executed */
      pending_queue: components['schemas']['QueueTaskItem'][]
      /** @description Map of currently installed node packages by name */
      installed_packs: {
        [key: string]: components['schemas']['ManagerPackInstalled']
      }
    }
    /**
     * @description WebSocket message type constants for manager events
     * @enum {string}
     */
    ManagerMessageName:
      | 'cm-task-completed'
      | 'cm-task-started'
      | 'cm-queue-status'
    MessageTaskDone: {
      /** @description Task identifier */
      ui_id: string
      /** @description Task result message */
      result: string
      /** @description Type of task */
      kind: string
      status?: components['schemas']['TaskExecutionStatus']
      /**
       * Format: date-time
       * @description ISO timestamp when task completed
       */
      timestamp: string
      state: components['schemas']['TaskStateMessage']
    }
    MessageTaskStarted: {
      /** @description Task identifier */
      ui_id: string
      /** @description Type of task */
      kind: string
      /**
       * Format: date-time
       * @description ISO timestamp when task started
       */
      timestamp: string
      state: components['schemas']['TaskStateMessage']
    }
    MessageTaskFailed: {
      /** @description Task identifier */
      ui_id: string
      /** @description Error message */
      error: string
      /** @description Type of task */
      kind: string
      /**
       * Format: date-time
       * @description ISO timestamp when task failed
       */
      timestamp: string
      state: components['schemas']['TaskStateMessage']
    }
    /** @description Union type for all possible WebSocket message updates */
    MessageUpdate:
      | components['schemas']['MessageTaskDone']
      | components['schemas']['MessageTaskStarted']
      | components['schemas']['MessageTaskFailed']
    ManagerPackInfo: {
      /** @description Either github-author/github-repo or name of pack from the registry */
      id: string
      /** @description Semantic version or Git commit hash */
      version: string
      /** @description Task ID - generated internally */
      ui_id?: string
    }
    ManagerPackInstalled: {
      /** @description The version of the pack that is installed (Git commit hash or semantic version) */
      ver: string
      /** @description The name of the pack if installed from the registry */
      cnr_id?: string | null
      /** @description The name of the pack if installed from github (author/repo-name format) */
      aux_id?: string | null
      /** @description Whether the pack is enabled */
      enabled: boolean
    }
    /**
     * @description Version selection for pack installation
     * @enum {string}
     */
    SelectedVersion: 'latest' | 'nightly'
    /**
     * @description Channel for pack sources
     * @enum {string}
     */
    ManagerChannel:
      | 'default'
      | 'recent'
      | 'legacy'
      | 'forked'
      | 'dev'
      | 'tutorial'
    /**
     * @description Source for pack information
     * @enum {string}
     */
    ManagerDatabaseSource: 'remote' | 'local' | 'cache'
    /**
     * @description Current state of a pack
     * @enum {string}
     */
    ManagerPackState:
      | 'installed'
      | 'disabled'
      | 'not_installed'
      | 'import_failed'
      | 'needs_update'
    /**
     * @description Type of installation used for the pack
     * @enum {string}
     */
    ManagerPackInstallType: 'git-clone' | 'copy' | 'cnr'
    ManagerPack: components['schemas']['ManagerPackInfo'] & {
      /** @description Pack author name or 'Unclaimed' if added via GitHub crawl */
      author?: string
      /** @description Files included in the pack */
      files?: string[]
      /** @description The type of installation reference */
      reference?: string
      /** @description The display name of the pack */
      title?: string
      cnr_latest?: components['schemas']['SelectedVersion']
      /** @description GitHub repository URL */
      repository?: string
      state?: components['schemas']['ManagerPackState']
      /**
       * @description Update availability status
       * @enum {string|null}
       */
      'update-state'?: 'false' | 'true' | null
      /** @description GitHub stars count */
      stars?: number
      /**
       * Format: date-time
       * @description Last update timestamp
       */
      last_update?: string
      /** @description Health status of the pack */
      health?: string
      /** @description Pack description */
      description?: string
      /** @description Whether the pack is trusted */
      trust?: boolean
      install_type?: components['schemas']['ManagerPackInstallType']
    }
    InstallPackParams: components['schemas']['ManagerPackInfo'] & {
      /** @description Semantic version, Git commit hash, latest, or nightly */
      selected_version: string | components['schemas']['SelectedVersion']
      /** @description GitHub repository URL (required if selected_version is nightly) */
      repository?: string
      /** @description PyPi dependency names */
      pip?: string[]
      mode: components['schemas']['ManagerDatabaseSource']
      channel: components['schemas']['ManagerChannel']
      /** @description Whether to skip post-installation steps */
      skip_post_install?: boolean
    }
    UpdateAllPacksParams: {
      mode?: components['schemas']['ManagerDatabaseSource']
      /** @description Task ID - generated internally */
      ui_id?: string
    }
    UpdatePackParams: {
      /** @description Name of the node package to update */
      node_name: string
      /** @description Current version of the node package */
      node_ver?: string | null
    }
    UpdateComfyUIParams: {
      /**
       * @description Whether to update to stable version (true) or nightly (false)
       * @default true
       */
      is_stable: boolean
      /** @description Specific version to switch to (for version switching operations) */
      target_version?: string | null
    }
    FixPackParams: {
      /** @description Name of the node package to fix */
      node_name: string
      /** @description Version of the node package */
      node_ver: string
    }
    UninstallPackParams: {
      /** @description Name of the node package to uninstall */
      node_name: string
      /**
       * @description Whether this is an unknown/unregistered package
       * @default false
       */
      is_unknown: boolean
    }
    DisablePackParams: {
      /** @description Name of the node package to disable */
      node_name: string
      /**
       * @description Whether this is an unknown/unregistered package
       * @default false
       */
      is_unknown: boolean
    }
    EnablePackParams: {
      /** @description ComfyUI Node Registry ID of the package to enable */
      cnr_id: string
    }
    QueueStatus: {
      /** @description Total number of tasks (pending + running) */
      total_count: number
      /** @description Number of completed tasks */
      done_count: number
      /** @description Number of tasks currently running */
      in_progress_count: number
      /** @description Number of tasks waiting to be executed */
      pending_count?: number
      /** @description Whether the task worker is active */
      is_processing: boolean
      /** @description Client ID (when filtered by client) */
      client_id?: string
    }
    ManagerMappings: {
      [key: string]: [
        string[],
        {
          /** @description The display name of the pack */
          title_aux?: string
        }
      ]
    }
    ModelMetadata: {
      /** @description Name of the model */
      name: string
      /** @description Type of model */
      type: string
      /** @description Base model type */
      base?: string
      /** @description Path for saving the model */
      save_path?: string
      /** @description Download URL */
      url: string
      /** @description Target filename */
      filename: string
      /** @description ID for UI reference */
      ui_id?: string
    }
    NodePackageMetadata: {
      /** @description Display name of the node package */
      title?: string
      /** @description Repository/package name */
      name?: string
      /** @description Source URLs for the package */
      files?: string[]
      /** @description Description of the node package functionality */
      description?: string
      /**
       * @description Installation method
       * @enum {string}
       */
      install_type?: 'git' | 'copy' | 'pip'
      /** @description Version identifier */
      version?: string
      /** @description Unique identifier for the node package */
      id?: string
      /** @description ID for UI reference */
      ui_id?: string
      /** @description Source channel */
      channel?: string
      /** @description Source mode */
      mode?: string
    }
    /** @description Name of the snapshot */
    SnapshotItem: string
    Error: {
      /** @description Error message */
      error: string
    }
    /** @description Map of pack names to their installation info */
    InstalledPacksResponse: {
      [key: string]: components['schemas']['ManagerPackInstalled']
    }
    HistoryResponse: {
      /** @description Map of task IDs to their history items */
      history?: {
        [key: string]: components['schemas']['TaskHistoryItem']
      }
    }
    HistoryListResponse: {
      /** @description List of available batch history IDs */
      ids?: string[]
    }
    InstalledNodeInfo: {
      /** @description Node package name */
      name: string
      /** @description Installed version */
      version: string
      /** @description Git repository URL */
      repository_url?: string | null
      /** @description Installation method (cnr, git, pip, etc.) */
      install_method: string
      /**
       * @description Whether the node is currently enabled
       * @default true
       */
      enabled: boolean
      /**
       * Format: date-time
       * @description ISO timestamp of installation
       */
      install_date?: string | null
    }
    InstalledModelInfo: {
      /** @description Model filename */
      name: string
      /** @description Full path to model file */
      path: string
      /** @description Model type (checkpoint, lora, vae, etc.) */
      type: string
      /** @description File size in bytes */
      size_bytes?: number | null
      /** @description Model file hash for verification */
      hash?: string | null
      /**
       * Format: date-time
       * @description ISO timestamp when added
       */
      install_date?: string | null
    }
    ComfyUIVersionInfo: {
      /** @description ComfyUI version string */
      version: string
      /** @description Git commit hash */
      commit_hash?: string | null
      /** @description Git branch name */
      branch?: string | null
      /**
       * @description Whether this is a stable release
       * @default false
       */
      is_stable: boolean
      /**
       * Format: date-time
       * @description ISO timestamp of last update
       */
      last_updated?: string | null
    }
    BatchOperation: {
      /** @description Unique operation identifier */
      operation_id: string
      /**
       * @description Type of operation
       * @enum {string}
       */
      operation_type:
        | 'install'
        | 'update'
        | 'uninstall'
        | 'fix'
        | 'disable'
        | 'enable'
        | 'install-model'
      /** @description Target of the operation (node name, model name, etc.) */
      target: string
      /** @description Target version for the operation */
      target_version?: string | null
      /**
       * @description Operation result
       * @enum {string}
       */
      result: 'success' | 'failed' | 'skipped'
      /** @description Error message if operation failed */
      error_message?: string | null
      /**
       * Format: date-time
       * @description ISO timestamp when operation started
       */
      start_time: string
      /**
       * Format: date-time
       * @description ISO timestamp when operation completed
       */
      end_time?: string | null
      /** @description Client that initiated the operation */
      client_id?: string | null
    }
    ComfyUISystemState: {
      /**
       * Format: date-time
       * @description ISO timestamp when snapshot was taken
       */
      snapshot_time: string
      comfyui_version: components['schemas']['ComfyUIVersionInfo']
      /** @description ComfyUI frontend version if available */
      frontend_version?: string | null
      /** @description Python interpreter version */
      python_version: string
      /** @description Operating system and platform information */
      platform_info: string
      /** @description Map of installed node packages by name */
      installed_nodes?: {
        [key: string]: components['schemas']['InstalledNodeInfo']
      }
      /** @description Map of installed models by name */
      installed_models?: {
        [key: string]: components['schemas']['InstalledModelInfo']
      }
      /** @description ComfyUI Manager configuration settings */
      manager_config?: {
        [key: string]: unknown
      }
    }
    BatchExecutionRecord: {
      /** @description Unique batch identifier */
      batch_id: string
      /**
       * Format: date-time
       * @description ISO timestamp when batch started
       */
      start_time: string
      /**
       * Format: date-time
       * @description ISO timestamp when batch completed
       */
      end_time?: string | null
      state_before: components['schemas']['ComfyUISystemState']
      /** @description System state after batch execution */
      state_after?: components['schemas']['ComfyUISystemState']
      /** @description List of operations performed in this batch */
      operations?: components['schemas']['BatchOperation'][]
      /**
       * @description Total number of operations in batch
       * @default 0
       */
      total_operations: number
      /**
       * @description Number of successful operations
       * @default 0
       */
      successful_operations: number
      /**
       * @description Number of failed operations
       * @default 0
       */
      failed_operations: number
      /**
       * @description Number of skipped operations
       * @default 0
       */
      skipped_operations: number
    }
    ImportFailInfoBulkRequest: {
      /** @description A list of CNR IDs to check. */
      cnr_ids?: string[]
      /** @description A list of repository URLs to check. */
      urls?: string[]
    }
    /** @description A dictionary where each key is a cnr_id or url from the request, and the value is the corresponding error info. */
    ImportFailInfoBulkResponse: {
      [key: string]: components['schemas']['ImportFailInfoItem']
    }
    ImportFailInfoItem: {
      error?: string
      traceback?: string
    } | null
  }
  responses: never
  parameters: {
    /** @description Source mode (e.g., "local", "remote") */
    modeParam: components['schemas']['ManagerDatabaseSource']
    /** @description Target identifier */
    targetParam: string
    /** @description New value to set */
    valueParam: string
    /** @description Client ID for filtering tasks */
    clientIdParam: string
    /** @description Specific task ID to retrieve */
    uiIdParam: string
    /** @description Required client ID that initiated the request */
    clientIdRequiredParam: string
    /** @description Required unique task identifier */
    uiIdRequiredParam: string
    /** @description Maximum number of items to return */
    maxItemsParam: number
    /** @description Offset for pagination */
    offsetParam: number
  }
  requestBodies: never
  headers: never
  pathItems: never
}
export type $defs = Record<string, never>
export type operations = Record<string, never>
