Files
jaidaken f09734b0ee
Some checks failed
Python Linting / Run Ruff (push) Has been cancelled
Python Linting / Run Pylint (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Has been cancelled
Execution Tests / test (macos-latest) (push) Has been cancelled
Execution Tests / test (ubuntu-latest) (push) Has been cancelled
Execution Tests / test (windows-latest) (push) Has been cancelled
Test server launches without errors / test (push) Has been cancelled
Unit Tests / test (macos-latest) (push) Has been cancelled
Unit Tests / test (ubuntu-latest) (push) Has been cancelled
Unit Tests / test (windows-2022) (push) Has been cancelled
Add custom nodes, Civitai loras (LFS), and vast.ai setup script
Includes 30 custom nodes committed directly, 7 Civitai-exclusive
loras stored via Git LFS, and a setup script that installs all
dependencies and downloads HuggingFace-hosted models on vast.ai.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 00:56:42 +00:00

154 lines
3.4 KiB
TypeScript

/**
* These contain types from ComfyUI (or LiteGraph) that are either copied or manually determined
* added here mostly because @comfyorg/comfyui-frontend-types hasn't exported them oir they weren't
* available.
*/
import type {SerializedGraph} from './index.js';
export type getPngMetadata = (file: File | Blob) => { workflow?: string; prompt?: string };
export type getWebpMetadata = (file: File | Blob) => {
Workflow?: string;
workflow?: string;
Prompt?: string;
prompt?: string;
};
// Below are types derived from the Serialized version of a workflow.
// export type SerializedLink = [
// number, // this.id,
// number, // this.origin_id,
// number, // this.origin_slot,
// number, // this.target_id,
// number, // this.target_slot,
// string, // this.type
// ];
// interface SerializedNodeInput {
// name: string;
// type: string;
// link: number;
// }
// interface SerializedNodeOutput extends SerializedNodeInput {
// slot_index: number;
// links: number[];
// }
// export interface SerializedNode {
// // id: number;
// // inputs: SerializedNodeInput[];
// // outputs: SerializedNodeOutput[];
// mode: number;
// order: number;
// pos: [number, number];
// properties: any;
// size: [number, number];
// type: string;
// widgets_values: Array<number | string>;
// }
// export interface SerializedGraph {
// config: any;
// extra: any;
// groups: any;
// last_link_id: number;
// last_node_id: number;
// links: SerializedLink[];
// nodes: SerializedNode[];
// }
/**
* ComfyUI-Frontend defines a ComfyNodeDef from Zod, but doesn't expose it. This is a shim.
*/
export type ComfyNodeDef = {
name: string;
display_name?: string;
description?: string;
category: string;
input?: {
required?: Record<string, [string | any[]] | [string | any[], any]>;
optional?: Record<string, [string | any[]] | [string | any[], any]>;
hidden?: Record<string, [string | any[]] | [string | any[], any]>;
};
output?: string[];
output_name: string[];
// @rgthree
output_node?: boolean;
};
// Below are types derived from the formats for the ComfyAPI.
// @rgthree
type ComfyApiInputLink = [
/** The id string of the connected node. */
string,
/** The output index. */
number,
]
type ComfyApiFormatNode = {
"inputs": {
[input_name: string]: string|number|boolean|ComfyApiInputLink,
},
"class_type": string,
"_meta": {
"title": string,
}
}
export type ComfyApiFormat = {
[node_id: string]: ComfyApiFormatNode
}
export type ComfyApiPrompt = {
workflow: SerializedGraph,
output: ComfyApiFormat,
}
export type ComfyApiEventDetailStatus = {
exec_info: {
queue_remaining: number;
};
};
export type ComfyApiEventDetailExecutionStart = {
prompt_id: string;
};
export type ComfyApiEventDetailExecuting = null | string;
export type ComfyApiEventDetailProgress = {
node: string;
prompt_id: string;
max: number;
value: number;
};
export type ComfyApiEventDetailExecuted = {
node: string;
prompt_id: string;
output: any;
};
export type ComfyApiEventDetailCached = {
nodes: string[];
prompt_id: string;
};
export type ComfyApiEventDetailError = {
prompt_id: string;
exception_type: string;
exception_message: string;
node_id: string;
node_type: string;
node_id: string;
traceback: string;
executed: any[];
current_inputs: {[key: string]: (number[]|string[])};
current_outputs: {[key: string]: (number[]|string[])};
}