Files
claude-hud/dist/types.d.ts
2026-03-23 03:47:56 +00:00

89 lines
2.3 KiB
TypeScript

import type { HudConfig } from './config.js';
import type { GitStatus } from './git.js';
export interface StdinData {
transcript_path?: string;
cwd?: string;
model?: {
id?: string;
display_name?: string;
};
context_window?: {
context_window_size?: number;
current_usage?: {
input_tokens?: number;
output_tokens?: number;
cache_creation_input_tokens?: number;
cache_read_input_tokens?: number;
} | null;
used_percentage?: number | null;
remaining_percentage?: number | null;
};
rate_limits?: {
five_hour?: {
used_percentage?: number | null;
resets_at?: number | null;
} | null;
seven_day?: {
used_percentage?: number | null;
resets_at?: number | null;
} | null;
} | null;
}
export interface ToolEntry {
id: string;
name: string;
target?: string;
status: 'running' | 'completed' | 'error';
startTime: Date;
endTime?: Date;
}
export interface AgentEntry {
id: string;
type: string;
model?: string;
description?: string;
status: 'running' | 'completed';
startTime: Date;
endTime?: Date;
}
export interface TodoItem {
content: string;
status: 'pending' | 'in_progress' | 'completed';
}
export interface UsageData {
fiveHour: number | null;
sevenDay: number | null;
fiveHourResetAt: Date | null;
sevenDayResetAt: Date | null;
}
export interface MemoryInfo {
totalBytes: number;
usedBytes: number;
freeBytes: number;
usedPercent: number;
}
/** Check if usage limit is reached (either window at 100%) */
export declare function isLimitReached(data: UsageData): boolean;
export interface TranscriptData {
tools: ToolEntry[];
agents: AgentEntry[];
todos: TodoItem[];
sessionStart?: Date;
sessionName?: string;
}
export interface RenderContext {
stdin: StdinData;
transcript: TranscriptData;
claudeMdCount: number;
rulesCount: number;
mcpCount: number;
hooksCount: number;
sessionDuration: string;
gitStatus: GitStatus | null;
usageData: UsageData | null;
memoryUsage: MemoryInfo | null;
config: HudConfig;
extraLabel: string | null;
claudeCodeVersion?: string;
}
//# sourceMappingURL=types.d.ts.map