export function callClaude(
  systemPrompt: string | Array<{ type: string; text: string; cache_control?: { type: string } }>,
  userMessage: string,
  maxTokens?: number,
  modelOverride?: string | null,
  tools?: unknown[] | null,
  opts?: {
    cacheSystem?: boolean;
    [key: string]: unknown;
  },
  apiKey?: string | null,
  state?: {
    models?: { research?: string; [key: string]: string };
    [key: string]: unknown;
  } | null
): Promise<string>;

export interface ApiResponse {
  status: number;
  json(): Promise<unknown>;
  text(): Promise<string>;
}
