// src/cache/types.ts
export type { FileHash } from "../layer/types.ts";

export type ToolUseId = string & { readonly __brand: "ToolUseId" };

export interface ReadCacheEntry {
  hash: string; // FileHash — stored as string in DB
  path: string;
  bytes: number;
  tokens: number;
  firstSeenAt: number;
  lastSeenAt: number;
  seenCount: number;
}

export interface ToolUseRef {
  id: ToolUseId;
  name: string; // e.g. "Read"
  input: unknown;
  resolvedHash?: string; // FileHash
}
