@comfyorg/comfyui-desktop-bridge-types 0.1.0 → 0.1.2

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.
@@ -0,0 +1,66 @@
1
+ export interface ComfyDownloadProgress {
2
+ url: string;
3
+ filename: string;
4
+ directory?: string;
5
+ progress: number;
6
+ receivedBytes?: number;
7
+ totalBytes?: number;
8
+ speedBytesPerSec?: number;
9
+ etaSeconds?: number;
10
+ status: 'pending' | 'downloading' | 'paused' | 'completed' | 'error' | 'cancelled';
11
+ error?: string;
12
+ isImage?: boolean;
13
+ }
14
+ export interface TerminalRestore {
15
+ buffer: string[];
16
+ size: {
17
+ cols: number;
18
+ rows: number;
19
+ };
20
+ exited: boolean;
21
+ }
22
+ export interface LogsRestore {
23
+ installationId: string;
24
+ buffer: string[];
25
+ }
26
+ export interface LogsOutputMsg {
27
+ installationId: string;
28
+ text: string;
29
+ }
30
+ export type ComfyDesktop2TelemetryValue = string | number | boolean | null;
31
+ export type ComfyDesktop2TelemetryProperties = Record<string, ComfyDesktop2TelemetryValue | ComfyDesktop2TelemetryValue[]>;
32
+ export interface ComfyDesktop2TerminalBridge {
33
+ subscribe(installationId?: string): Promise<TerminalRestore>;
34
+ unsubscribe(installationId?: string): Promise<void>;
35
+ write(data: string, installationId?: string): Promise<void>;
36
+ resize(cols: number, rows: number, installationId?: string): Promise<void>;
37
+ restart(installationId?: string): Promise<TerminalRestore>;
38
+ openPopout(): Promise<void>;
39
+ onOutput(callback: (data: string) => void): () => void;
40
+ onExited(callback: () => void): () => void;
41
+ }
42
+ export interface ComfyDesktop2LogsBridge {
43
+ subscribe(installationId?: string): Promise<LogsRestore>;
44
+ unsubscribe(installationId?: string): Promise<void>;
45
+ openPopout(): Promise<void>;
46
+ onOutput(callback: (msg: LogsOutputMsg) => void): () => void;
47
+ }
48
+ export interface ComfyDesktop2TelemetryBridge {
49
+ capture(event: string, properties?: ComfyDesktop2TelemetryProperties): void;
50
+ }
51
+ export interface ComfyDesktop2Bridge {
52
+ isRemote(): boolean;
53
+ downloadModel?: (url: string, filename: string, directory: string) => Promise<boolean>;
54
+ downloadAsset?: (url: string, filename: string, authToken?: string) => Promise<boolean>;
55
+ pauseDownload?: (url: string) => Promise<boolean>;
56
+ resumeDownload?: (url: string) => Promise<boolean>;
57
+ cancelDownload?: (url: string) => Promise<boolean>;
58
+ onDownloadProgress?: (callback: (data: ComfyDownloadProgress) => void) => () => void;
59
+ reportTheme?: (bg: string, text: string) => void;
60
+ Terminal?: ComfyDesktop2TerminalBridge;
61
+ Logs?: ComfyDesktop2LogsBridge;
62
+ Telemetry?: ComfyDesktop2TelemetryBridge;
63
+ }
64
+ export type ComfyDesktop2BridgeImplementation = {
65
+ [K in keyof ComfyDesktop2Bridge]-?: NonNullable<ComfyDesktop2Bridge[K]>;
66
+ };
package/index.d.ts CHANGED
@@ -1,65 +1 @@
1
- export interface ComfyDownloadProgress {
2
- url: string;
3
- filename: string;
4
- directory?: string;
5
- progress: number;
6
- receivedBytes?: number;
7
- totalBytes?: number;
8
- speedBytesPerSec?: number;
9
- etaSeconds?: number;
10
- status: 'pending' | 'downloading' | 'paused' | 'completed' | 'error' | 'cancelled';
11
- error?: string;
12
- isImage?: boolean;
13
- }
14
- export interface TerminalRestore {
15
- buffer: string[];
16
- size: {
17
- cols: number;
18
- rows: number;
19
- };
20
- exited: boolean;
21
- }
22
- export interface LogsRestore {
23
- installationId: string;
24
- buffer: string[];
25
- }
26
- export interface LogsOutputMsg {
27
- installationId: string;
28
- text: string;
29
- }
30
- export type ComfyDesktop2TelemetryValue = string | number | boolean | null;
31
- export type ComfyDesktop2TelemetryProperties = Record<string, ComfyDesktop2TelemetryValue | ComfyDesktop2TelemetryValue[]>;
32
- export interface ComfyDesktop2TerminalBridge {
33
- subscribe(installationId?: string): Promise<TerminalRestore>;
34
- unsubscribe(installationId?: string): Promise<void>;
35
- write(data: string, installationId?: string): Promise<void>;
36
- resize(cols: number, rows: number, installationId?: string): Promise<void>;
37
- restart(installationId?: string): Promise<TerminalRestore>;
38
- openPopout(): Promise<void>;
39
- onOutput(callback: (data: string) => void): () => void;
40
- onExited(callback: () => void): () => void;
41
- }
42
- export interface ComfyDesktop2LogsBridge {
43
- subscribe(installationId?: string): Promise<LogsRestore>;
44
- unsubscribe(installationId?: string): Promise<void>;
45
- openPopout(): Promise<void>;
46
- onOutput(callback: (msg: LogsOutputMsg) => void): () => void;
47
- }
48
- export interface ComfyDesktop2TelemetryBridge {
49
- capture(event: string, properties?: ComfyDesktop2TelemetryProperties): void;
50
- }
51
- export interface ComfyDesktop2Bridge {
52
- downloadModel?: (url: string, filename: string, directory: string) => Promise<boolean>;
53
- downloadAsset?: (url: string, filename: string, authToken?: string) => Promise<boolean>;
54
- pauseDownload?: (url: string) => Promise<boolean>;
55
- resumeDownload?: (url: string) => Promise<boolean>;
56
- cancelDownload?: (url: string) => Promise<boolean>;
57
- onDownloadProgress?: (callback: (data: ComfyDownloadProgress) => void) => () => void;
58
- reportTheme?: (bg: string, text: string) => void;
59
- Terminal?: ComfyDesktop2TerminalBridge;
60
- Logs?: ComfyDesktop2LogsBridge;
61
- Telemetry?: ComfyDesktop2TelemetryBridge;
62
- }
63
- export type ComfyDesktop2BridgeImplementation = {
64
- [K in keyof ComfyDesktop2Bridge]-?: NonNullable<ComfyDesktop2Bridge[K]>;
65
- };
1
+ export * from './comfyDesktopBridge.js'
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@comfyorg/comfyui-desktop-bridge-types",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "TypeScript definitions for the Comfy Desktop hosted frontend bridge",
5
5
  "type": "module",
6
6
  "main": "./index.js",
7
7
  "types": "./index.d.ts",
8
8
  "files": [
9
+ "comfyDesktopBridge.d.ts",
9
10
  "index.d.ts",
10
11
  "index.js"
11
12
  ],