@posthog/agent
Version:
TypeScript agent framework wrapping Claude Agent SDK with Git-based task execution for PostHog
980 lines • 28.3 kB
TypeScript
import { z } from "zod";
export declare const TokenEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"token">;
content: z.ZodString;
contentType: z.ZodOptional<z.ZodEnum<["text", "thinking", "tool_input"]>>;
}, "strip", z.ZodTypeAny, {
type: "token";
content: string;
ts: number;
contentType?: "text" | "thinking" | "tool_input" | undefined;
}, {
type: "token";
content: string;
ts: number;
contentType?: "text" | "thinking" | "tool_input" | undefined;
}>;
export declare const ContentBlockStartEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"content_block_start">;
index: z.ZodNumber;
contentType: z.ZodEnum<["text", "tool_use", "thinking"]>;
toolName: z.ZodOptional<z.ZodString>;
toolId: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
type: "content_block_start";
ts: number;
contentType: "text" | "tool_use" | "thinking";
index: number;
toolName?: string | undefined;
toolId?: string | undefined;
}, {
type: "content_block_start";
ts: number;
contentType: "text" | "tool_use" | "thinking";
index: number;
toolName?: string | undefined;
toolId?: string | undefined;
}>;
export declare const ContentBlockStopEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"content_block_stop">;
index: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
type: "content_block_stop";
ts: number;
index: number;
}, {
type: "content_block_stop";
ts: number;
index: number;
}>;
export declare const ToolCallEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"tool_call">;
toolName: z.ZodString;
callId: z.ZodString;
args: z.ZodRecord<z.ZodString, z.ZodUnknown>;
parentToolUseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
tool: z.ZodOptional<z.ZodUnknown>;
category: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
type: "tool_call";
args: Record<string, unknown>;
toolName: string;
ts: number;
callId: string;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}, {
type: "tool_call";
args: Record<string, unknown>;
toolName: string;
ts: number;
callId: string;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}>;
export declare const ToolResultEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"tool_result">;
toolName: z.ZodString;
callId: z.ZodString;
result: z.ZodUnknown;
isError: z.ZodOptional<z.ZodBoolean>;
parentToolUseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
tool: z.ZodOptional<z.ZodUnknown>;
category: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
type: "tool_result";
toolName: string;
ts: number;
callId: string;
isError?: boolean | undefined;
result?: unknown;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}, {
type: "tool_result";
toolName: string;
ts: number;
callId: string;
isError?: boolean | undefined;
result?: unknown;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}>;
export declare const MessageStartEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"message_start">;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
type: "message_start";
ts: number;
model?: string | undefined;
messageId?: string | undefined;
}, {
type: "message_start";
ts: number;
model?: string | undefined;
messageId?: string | undefined;
}>;
export declare const MessageDeltaEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"message_delta">;
stopReason: z.ZodOptional<z.ZodString>;
stopSequence: z.ZodOptional<z.ZodString>;
usage: z.ZodOptional<z.ZodObject<{
outputTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
outputTokens: number;
}, {
outputTokens: number;
}>>;
}, "strip", z.ZodTypeAny, {
type: "message_delta";
ts: number;
stopReason?: string | undefined;
usage?: {
outputTokens: number;
} | undefined;
stopSequence?: string | undefined;
}, {
type: "message_delta";
ts: number;
stopReason?: string | undefined;
usage?: {
outputTokens: number;
} | undefined;
stopSequence?: string | undefined;
}>;
export declare const MessageStopEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"message_stop">;
}, "strip", z.ZodTypeAny, {
type: "message_stop";
ts: number;
}, {
type: "message_stop";
ts: number;
}>;
export declare const UserMessageEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"user_message">;
content: z.ZodString;
isSynthetic: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
type: "user_message";
content: string;
ts: number;
isSynthetic?: boolean | undefined;
}, {
type: "user_message";
content: string;
ts: number;
isSynthetic?: boolean | undefined;
}>;
export declare const StatusEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"status">;
phase: z.ZodString;
kind: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
prUrl: z.ZodOptional<z.ZodString>;
taskId: z.ZodOptional<z.ZodString>;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"status">;
phase: z.ZodString;
kind: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
prUrl: z.ZodOptional<z.ZodString>;
taskId: z.ZodOptional<z.ZodString>;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"status">;
phase: z.ZodString;
kind: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
prUrl: z.ZodOptional<z.ZodString>;
taskId: z.ZodOptional<z.ZodString>;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>;
export declare const InitEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"init">;
model: z.ZodString;
tools: z.ZodArray<z.ZodString, "many">;
permissionMode: z.ZodString;
cwd: z.ZodString;
apiKeySource: z.ZodString;
agents: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
slashCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
outputStyle: z.ZodOptional<z.ZodString>;
mcpServers: z.ZodOptional<z.ZodArray<z.ZodObject<{
name: z.ZodString;
status: z.ZodString;
}, "strip", z.ZodTypeAny, {
status: string;
name: string;
}, {
status: string;
name: string;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
type: "init";
tools: string[];
cwd: string;
model: string;
permissionMode: string;
apiKeySource: string;
ts: number;
mcpServers?: {
status: string;
name: string;
}[] | undefined;
agents?: string[] | undefined;
slashCommands?: string[] | undefined;
outputStyle?: string | undefined;
}, {
type: "init";
tools: string[];
cwd: string;
model: string;
permissionMode: string;
apiKeySource: string;
ts: number;
mcpServers?: {
status: string;
name: string;
}[] | undefined;
agents?: string[] | undefined;
slashCommands?: string[] | undefined;
outputStyle?: string | undefined;
}>;
export declare const ConsoleEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"console">;
level: z.ZodEnum<["debug", "info", "warn", "error"]>;
message: z.ZodString;
}, "strip", z.ZodTypeAny, {
type: "console";
message: string;
ts: number;
level: "debug" | "info" | "warn" | "error";
}, {
type: "console";
message: string;
ts: number;
level: "debug" | "info" | "warn" | "error";
}>;
export declare const CompactBoundaryEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"compact_boundary">;
trigger: z.ZodEnum<["manual", "auto"]>;
preTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
type: "compact_boundary";
ts: number;
trigger: "manual" | "auto";
preTokens: number;
}, {
type: "compact_boundary";
ts: number;
trigger: "manual" | "auto";
preTokens: number;
}>;
export declare const DoneEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"done">;
result: z.ZodOptional<z.ZodString>;
durationMs: z.ZodOptional<z.ZodNumber>;
durationApiMs: z.ZodOptional<z.ZodNumber>;
numTurns: z.ZodOptional<z.ZodNumber>;
totalCostUsd: z.ZodOptional<z.ZodNumber>;
usage: z.ZodOptional<z.ZodUnknown>;
modelUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
inputTokens: z.ZodNumber;
outputTokens: z.ZodNumber;
cacheReadInputTokens: z.ZodNumber;
cacheCreationInputTokens: z.ZodNumber;
webSearchRequests: z.ZodNumber;
costUSD: z.ZodNumber;
contextWindow: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}>>>;
permissionDenials: z.ZodOptional<z.ZodArray<z.ZodObject<{
tool_name: z.ZodString;
tool_use_id: z.ZodString;
tool_input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}, {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
type: "done";
ts: number;
result?: string | undefined;
usage?: unknown;
modelUsage?: Record<string, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}> | undefined;
durationMs?: number | undefined;
durationApiMs?: number | undefined;
numTurns?: number | undefined;
totalCostUsd?: number | undefined;
permissionDenials?: {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}[] | undefined;
}, {
type: "done";
ts: number;
result?: string | undefined;
usage?: unknown;
modelUsage?: Record<string, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}> | undefined;
durationMs?: number | undefined;
durationApiMs?: number | undefined;
numTurns?: number | undefined;
totalCostUsd?: number | undefined;
permissionDenials?: {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}[] | undefined;
}>;
export declare const ErrorEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"error">;
message: z.ZodString;
error: z.ZodOptional<z.ZodUnknown>;
errorType: z.ZodOptional<z.ZodString>;
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
sdkError: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
type: "error";
message: string;
ts: number;
error?: unknown;
context?: Record<string, unknown> | undefined;
errorType?: string | undefined;
sdkError?: unknown;
}, {
type: "error";
message: string;
ts: number;
error?: unknown;
context?: Record<string, unknown> | undefined;
errorType?: string | undefined;
sdkError?: unknown;
}>;
export declare const MetricEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"metric">;
key: z.ZodString;
value: z.ZodNumber;
unit: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
key: string;
value: number;
type: "metric";
ts: number;
unit?: string | undefined;
}, {
key: string;
value: number;
type: "metric";
ts: number;
unit?: string | undefined;
}>;
export declare const ArtifactEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"artifact">;
kind: z.ZodString;
content: z.ZodUnknown;
}, "strip", z.ZodTypeAny, {
type: "artifact";
kind: string;
ts: number;
content?: unknown;
}, {
type: "artifact";
kind: string;
ts: number;
content?: unknown;
}>;
export declare const RawSDKEventSchema: z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"raw_sdk_event">;
sdkMessage: z.ZodUnknown;
}, "strip", z.ZodTypeAny, {
type: "raw_sdk_event";
ts: number;
sdkMessage?: unknown;
}, {
type: "raw_sdk_event";
ts: number;
sdkMessage?: unknown;
}>;
export declare const AgentEventSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"token">;
content: z.ZodString;
contentType: z.ZodOptional<z.ZodEnum<["text", "thinking", "tool_input"]>>;
}, "strip", z.ZodTypeAny, {
type: "token";
content: string;
ts: number;
contentType?: "text" | "thinking" | "tool_input" | undefined;
}, {
type: "token";
content: string;
ts: number;
contentType?: "text" | "thinking" | "tool_input" | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"content_block_start">;
index: z.ZodNumber;
contentType: z.ZodEnum<["text", "tool_use", "thinking"]>;
toolName: z.ZodOptional<z.ZodString>;
toolId: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
type: "content_block_start";
ts: number;
contentType: "text" | "tool_use" | "thinking";
index: number;
toolName?: string | undefined;
toolId?: string | undefined;
}, {
type: "content_block_start";
ts: number;
contentType: "text" | "tool_use" | "thinking";
index: number;
toolName?: string | undefined;
toolId?: string | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"content_block_stop">;
index: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
type: "content_block_stop";
ts: number;
index: number;
}, {
type: "content_block_stop";
ts: number;
index: number;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"tool_call">;
toolName: z.ZodString;
callId: z.ZodString;
args: z.ZodRecord<z.ZodString, z.ZodUnknown>;
parentToolUseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
tool: z.ZodOptional<z.ZodUnknown>;
category: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
type: "tool_call";
args: Record<string, unknown>;
toolName: string;
ts: number;
callId: string;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}, {
type: "tool_call";
args: Record<string, unknown>;
toolName: string;
ts: number;
callId: string;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"tool_result">;
toolName: z.ZodString;
callId: z.ZodString;
result: z.ZodUnknown;
isError: z.ZodOptional<z.ZodBoolean>;
parentToolUseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
tool: z.ZodOptional<z.ZodUnknown>;
category: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
type: "tool_result";
toolName: string;
ts: number;
callId: string;
isError?: boolean | undefined;
result?: unknown;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}, {
type: "tool_result";
toolName: string;
ts: number;
callId: string;
isError?: boolean | undefined;
result?: unknown;
parentToolUseId?: string | null | undefined;
tool?: unknown;
category?: unknown;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"message_start">;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
type: "message_start";
ts: number;
model?: string | undefined;
messageId?: string | undefined;
}, {
type: "message_start";
ts: number;
model?: string | undefined;
messageId?: string | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"message_delta">;
stopReason: z.ZodOptional<z.ZodString>;
stopSequence: z.ZodOptional<z.ZodString>;
usage: z.ZodOptional<z.ZodObject<{
outputTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
outputTokens: number;
}, {
outputTokens: number;
}>>;
}, "strip", z.ZodTypeAny, {
type: "message_delta";
ts: number;
stopReason?: string | undefined;
usage?: {
outputTokens: number;
} | undefined;
stopSequence?: string | undefined;
}, {
type: "message_delta";
ts: number;
stopReason?: string | undefined;
usage?: {
outputTokens: number;
} | undefined;
stopSequence?: string | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"message_stop">;
}, "strip", z.ZodTypeAny, {
type: "message_stop";
ts: number;
}, {
type: "message_stop";
ts: number;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"user_message">;
content: z.ZodString;
isSynthetic: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
type: "user_message";
content: string;
ts: number;
isSynthetic?: boolean | undefined;
}, {
type: "user_message";
content: string;
ts: number;
isSynthetic?: boolean | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"status">;
phase: z.ZodString;
kind: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
prUrl: z.ZodOptional<z.ZodString>;
taskId: z.ZodOptional<z.ZodString>;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"status">;
phase: z.ZodString;
kind: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
prUrl: z.ZodOptional<z.ZodString>;
taskId: z.ZodOptional<z.ZodString>;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"status">;
phase: z.ZodString;
kind: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
prUrl: z.ZodOptional<z.ZodString>;
taskId: z.ZodOptional<z.ZodString>;
messageId: z.ZodOptional<z.ZodString>;
model: z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"init">;
model: z.ZodString;
tools: z.ZodArray<z.ZodString, "many">;
permissionMode: z.ZodString;
cwd: z.ZodString;
apiKeySource: z.ZodString;
agents: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
slashCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
outputStyle: z.ZodOptional<z.ZodString>;
mcpServers: z.ZodOptional<z.ZodArray<z.ZodObject<{
name: z.ZodString;
status: z.ZodString;
}, "strip", z.ZodTypeAny, {
status: string;
name: string;
}, {
status: string;
name: string;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
type: "init";
tools: string[];
cwd: string;
model: string;
permissionMode: string;
apiKeySource: string;
ts: number;
mcpServers?: {
status: string;
name: string;
}[] | undefined;
agents?: string[] | undefined;
slashCommands?: string[] | undefined;
outputStyle?: string | undefined;
}, {
type: "init";
tools: string[];
cwd: string;
model: string;
permissionMode: string;
apiKeySource: string;
ts: number;
mcpServers?: {
status: string;
name: string;
}[] | undefined;
agents?: string[] | undefined;
slashCommands?: string[] | undefined;
outputStyle?: string | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"console">;
level: z.ZodEnum<["debug", "info", "warn", "error"]>;
message: z.ZodString;
}, "strip", z.ZodTypeAny, {
type: "console";
message: string;
ts: number;
level: "debug" | "info" | "warn" | "error";
}, {
type: "console";
message: string;
ts: number;
level: "debug" | "info" | "warn" | "error";
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"compact_boundary">;
trigger: z.ZodEnum<["manual", "auto"]>;
preTokens: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
type: "compact_boundary";
ts: number;
trigger: "manual" | "auto";
preTokens: number;
}, {
type: "compact_boundary";
ts: number;
trigger: "manual" | "auto";
preTokens: number;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"done">;
result: z.ZodOptional<z.ZodString>;
durationMs: z.ZodOptional<z.ZodNumber>;
durationApiMs: z.ZodOptional<z.ZodNumber>;
numTurns: z.ZodOptional<z.ZodNumber>;
totalCostUsd: z.ZodOptional<z.ZodNumber>;
usage: z.ZodOptional<z.ZodUnknown>;
modelUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
inputTokens: z.ZodNumber;
outputTokens: z.ZodNumber;
cacheReadInputTokens: z.ZodNumber;
cacheCreationInputTokens: z.ZodNumber;
webSearchRequests: z.ZodNumber;
costUSD: z.ZodNumber;
contextWindow: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}>>>;
permissionDenials: z.ZodOptional<z.ZodArray<z.ZodObject<{
tool_name: z.ZodString;
tool_use_id: z.ZodString;
tool_input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}, {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
type: "done";
ts: number;
result?: string | undefined;
usage?: unknown;
modelUsage?: Record<string, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}> | undefined;
durationMs?: number | undefined;
durationApiMs?: number | undefined;
numTurns?: number | undefined;
totalCostUsd?: number | undefined;
permissionDenials?: {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}[] | undefined;
}, {
type: "done";
ts: number;
result?: string | undefined;
usage?: unknown;
modelUsage?: Record<string, {
outputTokens: number;
inputTokens: number;
cacheReadInputTokens: number;
cacheCreationInputTokens: number;
webSearchRequests: number;
costUSD: number;
contextWindow: number;
}> | undefined;
durationMs?: number | undefined;
durationApiMs?: number | undefined;
numTurns?: number | undefined;
totalCostUsd?: number | undefined;
permissionDenials?: {
tool_use_id: string;
tool_name: string;
tool_input: Record<string, unknown>;
}[] | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"error">;
message: z.ZodString;
error: z.ZodOptional<z.ZodUnknown>;
errorType: z.ZodOptional<z.ZodString>;
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
sdkError: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
type: "error";
message: string;
ts: number;
error?: unknown;
context?: Record<string, unknown> | undefined;
errorType?: string | undefined;
sdkError?: unknown;
}, {
type: "error";
message: string;
ts: number;
error?: unknown;
context?: Record<string, unknown> | undefined;
errorType?: string | undefined;
sdkError?: unknown;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"metric">;
key: z.ZodString;
value: z.ZodNumber;
unit: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
key: string;
value: number;
type: "metric";
ts: number;
unit?: string | undefined;
}, {
key: string;
value: number;
type: "metric";
ts: number;
unit?: string | undefined;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"artifact">;
kind: z.ZodString;
content: z.ZodUnknown;
}, "strip", z.ZodTypeAny, {
type: "artifact";
kind: string;
ts: number;
content?: unknown;
}, {
type: "artifact";
kind: string;
ts: number;
content?: unknown;
}>, z.ZodObject<{
ts: z.ZodNumber;
} & {
type: z.ZodLiteral<"raw_sdk_event">;
sdkMessage: z.ZodUnknown;
}, "strip", z.ZodTypeAny, {
type: "raw_sdk_event";
ts: number;
sdkMessage?: unknown;
}, {
type: "raw_sdk_event";
ts: number;
sdkMessage?: unknown;
}>]>;
export type TokenEvent = z.infer<typeof TokenEventSchema>;
export type ContentBlockStartEvent = z.infer<typeof ContentBlockStartEventSchema>;
export type ContentBlockStopEvent = z.infer<typeof ContentBlockStopEventSchema>;
export type ToolCallEvent = z.infer<typeof ToolCallEventSchema>;
export type ToolResultEvent = z.infer<typeof ToolResultEventSchema>;
export type MessageStartEvent = z.infer<typeof MessageStartEventSchema>;
export type MessageDeltaEvent = z.infer<typeof MessageDeltaEventSchema>;
export type MessageStopEvent = z.infer<typeof MessageStopEventSchema>;
export type UserMessageEvent = z.infer<typeof UserMessageEventSchema>;
export type StatusEvent = z.infer<typeof StatusEventSchema>;
export type InitEvent = z.infer<typeof InitEventSchema>;
export type ConsoleEvent = z.infer<typeof ConsoleEventSchema>;
export type CompactBoundaryEvent = z.infer<typeof CompactBoundaryEventSchema>;
export type DoneEvent = z.infer<typeof DoneEventSchema>;
export type ErrorEvent = z.infer<typeof ErrorEventSchema>;
export type MetricEvent = z.infer<typeof MetricEventSchema>;
export type ArtifactEvent = z.infer<typeof ArtifactEventSchema>;
export type RawSDKEvent = z.infer<typeof RawSDKEventSchema>;
export type AgentEvent = z.infer<typeof AgentEventSchema>;
/**
* Parse and validate an AgentEvent from unknown input.
* Returns the parsed event if valid, or null if invalid.
*/
export declare function parseAgentEvent(input: unknown): AgentEvent | null;
/**
* Parse and validate multiple AgentEvents from an array of unknown inputs.
* Invalid entries are discarded.
*/
export declare function parseAgentEvents(inputs: unknown[]): AgentEvent[];
//# sourceMappingURL=schemas.d.ts.map