import type { BladeClient } from "../blade-client"; export type JsonSchemaObject = Record; export interface HeadlessRunOptions { schema?: JsonSchemaObject | null; model?: string | null; timeoutMs?: number; } export interface HeadlessRunInSessionResult { session_id: string; chat_run_id: string | null; result: T | string; } export declare class HeadlessError extends Error { readonly detail?: unknown; constructor(message: string, detail?: unknown); } export declare class HeadlessResource { private client; constructor(client: BladeClient); run(prompt: string, options: HeadlessRunOptions & { schema: JsonSchemaObject; }): Promise; run(prompt: string, options?: HeadlessRunOptions): Promise; runInSession(sessionId: string, prompt: string, options: HeadlessRunOptions & { schema: JsonSchemaObject; }): Promise; runInSession(sessionId: string, prompt: string, options?: HeadlessRunOptions): Promise; runWithSession(prompt: string, options: HeadlessRunOptions & { schema: JsonSchemaObject; }): Promise>; runWithSession(prompt: string, options?: HeadlessRunOptions): Promise>; private runTracked; }