/** * Miyabi MCP Bundle - Type Definitions * * Central type definitions for the MCP server. */ export type ErrorCode = 'NOT_FOUND' | 'INVALID_INPUT' | 'EXECUTION_FAILED' | 'TIMEOUT' | 'PERMISSION_DENIED' | 'NOT_INSTALLED' | 'VALIDATION_FAILED' | 'PATH_TRAVERSAL' | 'COMMAND_INJECTION'; export interface ToolError { error: string; code?: ErrorCode; suggestion?: string; details?: Record; } export type ToolResult = Record | ToolError; export type ToolArgs = Record; export type ToolHandler = (args: ToolArgs) => Promise; export interface CacheEntry { data: T; timestamp: number; ttl: number; } export interface CacheConfig { maxSize: number; defaultTTL: number; } export interface GitStatusResult { modified: string[]; staged: string[]; untracked: string[]; ahead?: number; behind?: number; } export interface GitLogEntry { hash: string; date: string; message: string; author_name: string; author_email: string; } export interface GitBranchInfo { name: string; current: boolean; tracking?: string; } export interface ProcessInfo { pid: number; name: string; cpu: number; mem: number; command?: string; } export interface NetworkInterface { iface: string; ip4: string; ip6: string; mac: string; internal: boolean; } export interface DnsLookupResult { hostname: string; address: { address: string; family: number; } | null; ipv4: string[]; ipv6: string[]; } export interface FileStats { path: string; size: number; modified: Date; created: Date; isDirectory: boolean; } export interface FileDuplicate { hash: string; files: string[]; } export interface GitHubIssue { number: number; title: string; state: string; body?: string; labels: string[]; assignees: string[]; created_at: string; updated_at: string; } export interface GitHubPullRequest { number: number; title: string; state: string; body?: string; head: { ref: string; }; base: { ref: string; }; mergeable?: boolean; merged: boolean; created_at: string; updated_at: string; } export interface HealthCheckResult { status: 'healthy' | 'degraded' | 'unhealthy'; checks: { git: boolean; github: boolean; tmux: boolean; system: boolean; }; details: Record; } //# sourceMappingURL=types.d.ts.map