import { z } from 'zod'; import winston from 'winston'; import { IClaudeCodeClient, ClaudeCodeResult } from './claude-code-interface'; export declare const ClaudeCodeSDKConfigSchema: z.ZodObject<{ apiKey: z.ZodOptional; projectPath: z.ZodString; maxTurns: z.ZodDefault; model: z.ZodDefault; temperature: z.ZodDefault; systemPrompt: z.ZodOptional; planMode: z.ZodDefault; jsonMode: z.ZodDefault; }, "strip", z.ZodTypeAny, { model: string; temperature: number; projectPath: string; maxTurns: number; planMode: boolean; jsonMode: boolean; apiKey?: string | undefined; systemPrompt?: string | undefined; }, { projectPath: string; apiKey?: string | undefined; model?: string | undefined; temperature?: number | undefined; maxTurns?: number | undefined; systemPrompt?: string | undefined; planMode?: boolean | undefined; jsonMode?: boolean | undefined; }>; export type ClaudeCodeSDKConfig = z.infer; export type ClaudeCodeSDKResult = ClaudeCodeResult; export interface ExecutionContext { workingDirectory: string; environment: Record; previousArtifacts: Array<{ path: string; content: string; }>; } export declare class ClaudeCodeSDKClient implements IClaudeCodeClient { private config; private logger; private currentSession; constructor(config: ClaudeCodeSDKConfig, logger: winston.Logger); execute(task: string, context?: ExecutionContext): Promise; validateEnvironment(): Promise; startSession(sessionId: string): void; endSession(): void; private buildPrompt; private buildSystemPrompt; private handleMessage; private determineFileType; private calculateCost; updateConfig(config: Partial): void; getConfig(): ClaudeCodeSDKConfig; } //# sourceMappingURL=claude-code-sdk-client.d.ts.map