n8n-nodes-comfyui-all 2.2.10 → 2.2.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/LICENSE +21 -0
  2. package/dist/agent-tools/ComfyUIAgentTool.d.ts +5 -0
  3. package/dist/agent-tools/ComfyUIAgentTool.d.ts.map +1 -1
  4. package/dist/agent-tools/ComfyUIAgentTool.js +133 -98
  5. package/dist/agent-tools/ComfyUIAgentTool.js.map +1 -1
  6. package/dist/nodes/AxiosAdapter.d.ts +5 -0
  7. package/dist/nodes/AxiosAdapter.d.ts.map +1 -0
  8. package/dist/nodes/AxiosAdapter.js +31 -0
  9. package/dist/nodes/AxiosAdapter.js.map +1 -0
  10. package/dist/nodes/ComfyUi/ComfyUi.node.d.ts +21 -0
  11. package/dist/nodes/ComfyUi/ComfyUi.node.d.ts.map +1 -1
  12. package/dist/nodes/ComfyUi/ComfyUi.node.js +34 -204
  13. package/dist/nodes/ComfyUi/ComfyUi.node.js.map +1 -1
  14. package/dist/nodes/ComfyUiClient.d.ts +41 -9
  15. package/dist/nodes/ComfyUiClient.d.ts.map +1 -1
  16. package/dist/nodes/ComfyUiClient.js +228 -161
  17. package/dist/nodes/ComfyUiClient.js.map +1 -1
  18. package/dist/nodes/HttpClient.d.ts +34 -0
  19. package/dist/nodes/HttpClient.d.ts.map +1 -0
  20. package/dist/nodes/HttpClient.js +85 -0
  21. package/dist/nodes/HttpClient.js.map +1 -0
  22. package/dist/nodes/N8nHelpersAdapter.d.ts +8 -0
  23. package/dist/nodes/N8nHelpersAdapter.d.ts.map +1 -0
  24. package/dist/nodes/N8nHelpersAdapter.js +23 -0
  25. package/dist/nodes/N8nHelpersAdapter.js.map +1 -0
  26. package/dist/nodes/constants.d.ts +9 -2
  27. package/dist/nodes/constants.d.ts.map +1 -1
  28. package/dist/nodes/constants.js +14 -3
  29. package/dist/nodes/constants.js.map +1 -1
  30. package/dist/nodes/errors.d.ts +35 -0
  31. package/dist/nodes/errors.d.ts.map +1 -0
  32. package/dist/nodes/errors.js +111 -0
  33. package/dist/nodes/errors.js.map +1 -0
  34. package/dist/nodes/logger.d.ts +4 -2
  35. package/dist/nodes/logger.d.ts.map +1 -1
  36. package/dist/nodes/logger.js +27 -15
  37. package/dist/nodes/logger.js.map +1 -1
  38. package/dist/nodes/parameterProcessor.d.ts +22 -0
  39. package/dist/nodes/parameterProcessor.d.ts.map +1 -0
  40. package/dist/nodes/parameterProcessor.js +268 -0
  41. package/dist/nodes/parameterProcessor.js.map +1 -0
  42. package/dist/nodes/types.d.ts +67 -0
  43. package/dist/nodes/types.d.ts.map +1 -1
  44. package/dist/nodes/utils.d.ts +18 -0
  45. package/dist/nodes/utils.d.ts.map +1 -1
  46. package/dist/nodes/utils.js +33 -0
  47. package/dist/nodes/utils.js.map +1 -1
  48. package/dist/nodes/validation.d.ts +8 -1
  49. package/dist/nodes/validation.d.ts.map +1 -1
  50. package/dist/nodes/validation.js +97 -24
  51. package/dist/nodes/validation.js.map +1 -1
  52. package/dist/nodes/workflowConfig.js.map +1 -1
  53. package/package.json +17 -3
@@ -4,9 +4,8 @@ exports.ComfyUi = void 0;
4
4
  const n8n_workflow_1 = require("n8n-workflow");
5
5
  const ComfyUiClient_1 = require("../ComfyUiClient");
6
6
  const validation_1 = require("../validation");
7
- const constants_1 = require("../constants");
8
7
  const logger_1 = require("../logger");
9
- const utils_1 = require("../utils");
8
+ const parameterProcessor_1 = require("../parameterProcessor");
10
9
  class ComfyUi {
11
10
  constructor() {
12
11
  /**
@@ -28,6 +27,31 @@ class ComfyUi {
28
27
  usableAsTool: true,
29
28
  inputs: ['main'],
30
29
  outputs: ['main'],
30
+ subtitle: 'ComfyUI Integration',
31
+ notes: [
32
+ 'Requires a running ComfyUI server',
33
+ 'Supports dynamic parameter overrides',
34
+ 'Can be used as an AI Agent tool',
35
+ ],
36
+ inputSample: {
37
+ comfyUiUrl: 'http://127.0.0.1:8188',
38
+ workflowJson: '{}',
39
+ nodeParameters: [],
40
+ },
41
+ outputSample: {
42
+ json: {
43
+ success: true,
44
+ images: [],
45
+ imageUrls: [],
46
+ },
47
+ binary: {
48
+ data: {
49
+ data: 'base64_encoded_image_data',
50
+ mimeType: 'image/png',
51
+ fileName: 'ComfyUI_00001.png',
52
+ },
53
+ },
54
+ },
31
55
  properties: [
32
56
  {
33
57
  displayName: 'ComfyUI URL',
@@ -300,7 +324,7 @@ class ComfyUi {
300
324
  const comfyUiUrl = this.getNodeParameter('comfyUiUrl', 0);
301
325
  const workflowJson = this.getNodeParameter('workflowJson', 0);
302
326
  const timeout = this.getNodeParameter('timeout', 0);
303
- const outputBinaryKey = this.getNodeParameter('outputBinaryKey', 0) || constants_1.DEFAULT_OUTPUT_BINARY_KEY;
327
+ const outputBinaryKey = (0, validation_1.validateOutputBinaryKey)(this.getNodeParameter('outputBinaryKey', 0));
304
328
  if (!(0, validation_1.validateUrl)(comfyUiUrl)) {
305
329
  throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Invalid ComfyUI URL. Must be a valid HTTP/HTTPS URL.');
306
330
  }
@@ -313,7 +337,8 @@ class ComfyUi {
313
337
  workflow = (0, validation_1.safeJsonParse)(workflowJson, 'Workflow JSON');
314
338
  }
315
339
  catch (error) {
316
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to parse workflow JSON: ${error}. Please ensure the JSON is valid.`);
340
+ const errorMsg = error instanceof Error ? error.message : String(error);
341
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to parse workflow JSON: ${errorMsg}. Please ensure the JSON is valid.`);
317
342
  }
318
343
  const client = new ComfyUiClient_1.ComfyUIClient({
319
344
  baseUrl: comfyUiUrl,
@@ -324,206 +349,11 @@ class ComfyUi {
324
349
  logger.info('Starting ComfyUI workflow execution', { url: comfyUiUrl, timeout });
325
350
  try {
326
351
  const nodeParametersInput = this.getNodeParameter('nodeParameters', 0);
327
- if (nodeParametersInput && nodeParametersInput.nodeParameter && Array.isArray(nodeParametersInput.nodeParameter)) {
328
- logger.debug(`Processing ${nodeParametersInput.nodeParameter.length} node parameter overrides`);
329
- for (const [i, nodeParamConfig] of nodeParametersInput.nodeParameter.entries()) {
330
- const nodeId = nodeParamConfig.nodeId;
331
- const parameterMode = nodeParamConfig.parameterMode || 'single';
332
- const parametersJson = nodeParamConfig.parametersJson;
333
- const paramName = nodeParamConfig.paramName;
334
- const type = nodeParamConfig.type || 'text';
335
- const imageSource = nodeParamConfig.imageSource || 'binary';
336
- const value = nodeParamConfig.value || '';
337
- const numberValue = nodeParamConfig.numberValue ?? 0;
338
- const booleanValue = nodeParamConfig.booleanValue ?? 'false';
339
- const imageUrl = nodeParamConfig.imageUrl || '';
340
- if (!nodeId) {
341
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1} is missing Node ID.`);
342
- }
343
- if (!workflow[nodeId]) {
344
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node ID "${nodeId}" not found in workflow. Please check your workflow JSON.`);
345
- }
346
- if (!workflow[nodeId].inputs) {
347
- workflow[nodeId].inputs = {};
348
- }
349
- if (parameterMode === 'multiple' && parametersJson) {
350
- let parameters;
351
- try {
352
- parameters = (0, validation_1.safeJsonParse)(parametersJson, `Node Parameters ${i + 1}`);
353
- }
354
- catch (error) {
355
- const errorMsg = error instanceof Error ? error.message : String(error);
356
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: ${errorMsg}`);
357
- }
358
- if (typeof parameters !== 'object' || parameters === null) {
359
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Parameters must be a JSON object`);
360
- }
361
- logger.debug(`Applying multiple parameters to node ${nodeId}`, { parameters });
362
- for (const [key, val] of Object.entries(parameters)) {
363
- workflow[nodeId].inputs[key] = val;
364
- }
365
- }
366
- else if (parameterMode === 'single' && paramName) {
367
- if (!type) {
368
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Type is required for single parameter mode.`);
369
- }
370
- let parsedValue;
371
- switch (type) {
372
- case 'text':
373
- parsedValue = value || '';
374
- workflow[nodeId].inputs[paramName] = parsedValue;
375
- break;
376
- case 'number':
377
- parsedValue = numberValue !== undefined ? numberValue : 0;
378
- workflow[nodeId].inputs[paramName] = parsedValue;
379
- break;
380
- case 'boolean':
381
- parsedValue = booleanValue === 'true' || booleanValue === true;
382
- workflow[nodeId].inputs[paramName] = parsedValue;
383
- break;
384
- case 'image':
385
- logger.info(`Processing image parameter for node ${nodeId}`, { paramName, imageSource, imageUrl: imageUrl || 'N/A', value: value || 'N/A' });
386
- if (imageSource === 'url') {
387
- if (!imageUrl) {
388
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Image URL is required when Image Input Type is set to URL.`);
389
- }
390
- if (!(0, validation_1.validateUrl)(imageUrl)) {
391
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Invalid image URL "${imageUrl}". Must be a valid HTTP/HTTPS URL.`);
392
- }
393
- logger.info(`Downloading image from URL`, { url: imageUrl, paramName });
394
- try {
395
- const imageResponse = await this.helpers.httpRequest({
396
- method: 'GET',
397
- url: imageUrl,
398
- encoding: 'arraybuffer',
399
- timeout: timeout * 1000,
400
- headers: {
401
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36',
402
- 'Accept': 'image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8',
403
- 'Accept-Language': 'en-US,en;q=0.9',
404
- },
405
- });
406
- if (!imageResponse || !Buffer.isBuffer(imageResponse)) {
407
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Failed to download image from URL "${imageUrl}". The server did not return valid image data. Please check the URL and try again.`);
408
- }
409
- const imageBuffer = Buffer.from(imageResponse);
410
- if (imageBuffer.length === 0) {
411
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Downloaded image from URL "${imageUrl}" is empty. Please check the URL and try again.`);
412
- }
413
- // Validate downloaded image size
414
- const maxImageSize = constants_1.VALIDATION.MAX_IMAGE_SIZE_MB * 1024 * 1024;
415
- if (imageBuffer.length > maxImageSize) {
416
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Downloaded image size (${Math.round(imageBuffer.length / 1024 / 1024)}MB) exceeds maximum allowed size of ${constants_1.VALIDATION.MAX_IMAGE_SIZE_MB}MB`);
417
- }
418
- logger.info(`Successfully downloaded image`, { size: imageBuffer.length, url: imageUrl });
419
- let filename = imageUrl.split('/').pop() || (0, utils_1.generateUniqueFilename)('png', 'download');
420
- if (filename.includes('?')) {
421
- filename = filename.split('?')[0];
422
- }
423
- if (!filename.match(/\.(png|jpg|jpeg|webp|gif|bmp)$/i)) {
424
- filename = (0, utils_1.generateUniqueFilename)('png', 'download');
425
- }
426
- else {
427
- try {
428
- filename = (0, utils_1.validateFilename)(filename);
429
- }
430
- catch (error) {
431
- const errorMsg = error instanceof Error ? error.message : String(error);
432
- logger.warn(`Invalid filename "${filename}", generating unique filename`, { error: errorMsg });
433
- filename = (0, utils_1.generateUniqueFilename)('png', 'download');
434
- }
435
- }
436
- logger.info(`Uploading image to ComfyUI`, { filename, size: imageBuffer.length });
437
- const uploadedFilename = await client.uploadImage(imageBuffer, filename);
438
- parsedValue = uploadedFilename;
439
- workflow[nodeId].inputs[paramName] = parsedValue;
440
- logger.info(`Successfully uploaded image to ComfyUI`, { paramName, filename: uploadedFilename });
441
- }
442
- catch (error) {
443
- if (error instanceof n8n_workflow_1.NodeOperationError) {
444
- throw error;
445
- }
446
- const statusCode = error.response?.statusCode || error.statusCode;
447
- const statusMessage = error.response?.statusMessage || error.statusMessage;
448
- const errorDetail = error instanceof Error ? error.message : String(error);
449
- let errorMessage = `Node Parameters ${i + 1}: Failed to download image from URL "${imageUrl}"`;
450
- if (statusCode) {
451
- errorMessage += ` (HTTP ${statusCode} ${statusMessage || ''})`;
452
- }
453
- errorMessage += `. ${errorDetail}`;
454
- if (statusCode === 403) {
455
- errorMessage += ' Note: The URL may require authentication or block automated access. Try downloading the image manually and using Binary mode instead.';
456
- }
457
- else if (statusCode === 404) {
458
- errorMessage += ' Note: The URL may be incorrect or the image may have been removed.';
459
- }
460
- else if (statusCode === 400) {
461
- errorMessage += ' Note: The URL may be malformed or the server may be rejecting the request. Try using a different URL or download the image manually and use Binary mode.';
462
- }
463
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), errorMessage);
464
- }
465
- }
466
- else {
467
- logger.info(`Getting binary data from input`, { binaryProperty: value || 'data', paramName });
468
- const inputData = this.getInputData(0);
469
- const binaryPropertyName = value || 'data';
470
- if (!inputData || !inputData[0] || !inputData[0].binary || !inputData[0].binary[binaryPropertyName]) {
471
- const availableKeys = inputData && inputData[0] && inputData[0].binary ? Object.keys(inputData[0].binary).join(', ') : 'none';
472
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Binary property "${binaryPropertyName}" not found in input data.
473
-
474
- Available binary properties: ${availableKeys}
475
-
476
- TIP: Check the previous node's "Output Binary Key" parameter. It should match "${binaryPropertyName}".`);
477
- }
478
- const binaryData = inputData[0].binary[binaryPropertyName];
479
- if (!binaryData.data || typeof binaryData.data !== 'string') {
480
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Invalid binary data for property "${binaryPropertyName}". The data field is missing or not a string.`);
481
- }
482
- // Validate base64 string length before decoding
483
- const base64Data = binaryData.data;
484
- const maxBase64Length = constants_1.VALIDATION.MAX_IMAGE_SIZE_MB * 1024 * 1024 * 4 / 3; // Base64 is ~33% larger than binary
485
- if (base64Data.length > maxBase64Length) {
486
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Binary data exceeds maximum allowed size of ${constants_1.VALIDATION.MAX_IMAGE_SIZE_MB}MB. ` +
487
- `Base64 data length: ${Math.round(base64Data.length / 1024 / 1024)}MB (decoded would be ~${Math.round(base64Data.length * 0.75 / 1024 / 1024)}MB)`);
488
- }
489
- // Validate MIME type
490
- if (!binaryData.mimeType || typeof binaryData.mimeType !== 'string') {
491
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Invalid or missing MIME type for binary data.`);
492
- }
493
- const mimeType = binaryData.mimeType.toLowerCase();
494
- const allowedMimeTypes = Object.values(constants_1.IMAGE_MIME_TYPES);
495
- if (!allowedMimeTypes.includes(mimeType)) {
496
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Unsupported MIME type "${mimeType}". ` +
497
- `Allowed types: ${allowedMimeTypes.join(', ')}`);
498
- }
499
- const ext = binaryData.mimeType.split('/')[1] || 'png';
500
- const filename = binaryData.fileName || (0, utils_1.generateUniqueFilename)(ext, 'upload');
501
- const buffer = Buffer.from(base64Data, 'base64');
502
- if (!Buffer.isBuffer(buffer) || buffer.length === 0) {
503
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Failed to decode binary data for property "${binaryPropertyName}". The data may be corrupted. Buffer length: ${buffer.length}`);
504
- }
505
- const maxBufferSize = constants_1.VALIDATION.MAX_IMAGE_SIZE_MB * 1024 * 1024;
506
- if (buffer.length > maxBufferSize) {
507
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Decoded buffer size (${Math.round(buffer.length / 1024 / 1024)}MB) exceeds maximum allowed size of ${constants_1.VALIDATION.MAX_IMAGE_SIZE_MB}MB`);
508
- }
509
- logger.info(`Uploading binary data to ComfyUI`, { filename, size: buffer.length, mimeType: binaryData.mimeType, paramName });
510
- const uploadedFilename = await client.uploadImage(buffer, filename);
511
- parsedValue = uploadedFilename;
512
- workflow[nodeId].inputs[paramName] = parsedValue;
513
- logger.info(`Successfully uploaded binary data`, { paramName, filename: uploadedFilename });
514
- }
515
- break;
516
- default:
517
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: Unknown type "${type}"`);
518
- }
519
- logger.debug(`Applying single parameter to node ${nodeId}`, { paramName, value: parsedValue });
520
- }
521
- else {
522
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Node Parameters ${i + 1}: For Multiple Parameters mode, provide Parameters JSON. For Single Parameter mode, provide Parameter Name and Value.`);
523
- }
524
- }
525
- }
526
- // Log workflow before execution
352
+ const parameterProcessor = new parameterProcessor_1.ParameterProcessor({
353
+ executeFunctions: this,
354
+ logger,
355
+ });
356
+ await parameterProcessor.processNodeParameters(nodeParametersInput, workflow, (buffer, filename) => client.uploadImage(buffer, filename), timeout);
527
357
  logger.info('Prepared workflow for execution', {
528
358
  nodeCount: Object.keys(workflow).length,
529
359
  comfyUiUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"ComfyUi.node.js","sourceRoot":"","sources":["../../../nodes/ComfyUi/ComfyUi.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComfyUi.node.js","sourceRoot":"","sources":["../../../nodes/ComfyUi/ComfyUi.node.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { IExecuteFunctions } from 'n8n-workflow';
2
2
  import { Logger } from './logger';
3
+ import { ProcessOutput } from './types';
3
4
  export interface ComfyUIClientConfig {
4
5
  baseUrl: string;
5
6
  clientId?: string;
@@ -25,14 +26,13 @@ export interface WorkflowResult {
25
26
  error?: string;
26
27
  }
27
28
  export declare class ComfyUIClient {
28
- private helpers;
29
+ private httpClient;
29
30
  private logger;
30
31
  private baseUrl;
31
- private timeout;
32
32
  private clientId;
33
33
  private maxRetries;
34
- private isDestroyed;
35
- private abortController;
34
+ private state;
35
+ private currentAbortController;
36
36
  constructor(config: ComfyUIClientConfig);
37
37
  /**
38
38
  * Cancel any ongoing request and clean up resources
@@ -86,7 +86,12 @@ export declare class ComfyUIClient {
86
86
  private waitForExecution;
87
87
  /**
88
88
  * Extract image and video results from workflow outputs
89
- * @param outputs - Raw output data from ComfyUI
89
+ *
90
+ * Note: The `outputs` parameter uses `WorkflowOutputs` type because ComfyUI API responses
91
+ * have a dynamic structure that is not guaranteed. Different ComfyUI nodes
92
+ * may return different output formats, and we need to handle this flexibility.
93
+ *
94
+ * @param outputs - Raw output data from ComfyUI (format is not guaranteed, using WorkflowOutputs for flexibility)
90
95
  * @returns WorkflowResult with extracted images and videos
91
96
  */
92
97
  private extractResults;
@@ -110,6 +115,22 @@ export declare class ComfyUIClient {
110
115
  * @returns Promise containing system stats
111
116
  */
112
117
  getSystemInfo(): Promise<Record<string, unknown>>;
118
+ /**
119
+ * Check if ComfyUI server is accessible
120
+ * @returns Promise containing health status
121
+ */
122
+ healthCheck(): Promise<{
123
+ healthy: boolean;
124
+ message: string;
125
+ }>;
126
+ /**
127
+ * Get buffer from ComfyUI server (internal method)
128
+ * @param path - Path to the resource on ComfyUI server
129
+ * @param resourceType - Type of resource ('image' or 'video')
130
+ * @returns Promise containing resource data as Buffer
131
+ * @throws Error if resource retrieval fails
132
+ */
133
+ private getBuffer;
113
134
  /**
114
135
  * Get image buffer from ComfyUI server
115
136
  * @param imagePath - Path to the image on ComfyUI server
@@ -124,6 +145,20 @@ export declare class ComfyUIClient {
124
145
  * @throws Error if video retrieval fails
125
146
  */
126
147
  getVideoBuffer(videoPath: string): Promise<Buffer>;
148
+ /**
149
+ * Get multiple image buffers concurrently from ComfyUI server
150
+ * @param imagePaths - Array of paths to the images on ComfyUI server
151
+ * @returns Promise containing array of image data as Buffers
152
+ * @throws Error if any image retrieval fails
153
+ */
154
+ getImageBuffers(imagePaths: string[]): Promise<Buffer[]>;
155
+ /**
156
+ * Get multiple video buffers concurrently from ComfyUI server
157
+ * @param videoPaths - Array of paths to the videos on ComfyUI server
158
+ * @returns Promise containing array of video data as Buffers
159
+ * @throws Error if any video retrieval fails
160
+ */
161
+ getVideoBuffers(videoPaths: string[]): Promise<Buffer[]>;
127
162
  /**
128
163
  * Format error message with additional context
129
164
  */
@@ -134,9 +169,6 @@ export declare class ComfyUIClient {
134
169
  * @param outputBinaryKey - Property name for the first output binary data
135
170
  * @returns Processed result with json and binary data
136
171
  */
137
- processResults(result: WorkflowResult, outputBinaryKey?: string): Promise<{
138
- json: Record<string, any>;
139
- binary: Record<string, any>;
140
- }>;
172
+ processResults(result: WorkflowResult, outputBinaryKey?: string): Promise<ProcessOutput>;
141
173
  }
142
174
  //# sourceMappingURL=ComfyUiClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComfyUiClient.d.ts","sourceRoot":"","sources":["../../nodes/ComfyUiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComfyUiClient.d.ts","sourceRoot":"","sources":["../../nodes/ComfyUiClient.ts"],"names":[],"mappings":"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"}