Set up the complete project foundation for ClawX, a graphical AI assistant: - Electron main process with IPC handlers, menu, tray, and gateway management - React renderer with routing, layout components, and page scaffolding - Zustand state management for gateway, settings, channels, skills, chat, and cron - shadcn/ui components with Tailwind CSS and CSS variable theming - Build tooling with Vite, electron-builder, and TypeScript configuration - Testing setup with Vitest and Playwright - Development configurations (ESLint, Prettier, gitignore, env example)
26 lines
450 B
TypeScript
26 lines
450 B
TypeScript
/**
|
|
* Gateway Type Definitions
|
|
* Types for Gateway communication and data structures
|
|
*/
|
|
|
|
/**
|
|
* Gateway connection status
|
|
*/
|
|
export interface GatewayStatus {
|
|
state: 'stopped' | 'starting' | 'running' | 'error';
|
|
port: number;
|
|
pid?: number;
|
|
uptime?: number;
|
|
error?: string;
|
|
connectedAt?: number;
|
|
}
|
|
|
|
/**
|
|
* Gateway RPC response
|
|
*/
|
|
export interface GatewayRpcResponse<T = unknown> {
|
|
success: boolean;
|
|
result?: T;
|
|
error?: string;
|
|
}
|