rdesign/frontend/node_modules/@ag-ui/proto/dist/index.mjs.map

1 line
126 KiB
Plaintext

{"version":3,"file":"index.mjs","names":["EventType","BaseEvent","protoPatch.JsonPatchOperationType","protoEvents.EventType"],"sources":["../src/generated/google/protobuf/struct.ts","../src/generated/patch.ts","../src/generated/types.ts","../src/generated/events.ts","../src/proto.ts","../src/index.ts"],"sourcesContent":["// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc v5.29.3\n// source: google/protobuf/struct.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\n\nexport const protobufPackage = \"google.protobuf\";\n\n/**\n * `NullValue` is a singleton enumeration to represent the null value for the\n * `Value` type union.\n *\n * The JSON representation for `NullValue` is JSON `null`.\n */\nexport enum NullValue {\n /** NULL_VALUE - Null value. */\n NULL_VALUE = 0,\n UNRECOGNIZED = -1,\n}\n\n/**\n * `Struct` represents a structured data value, consisting of fields\n * which map to dynamically typed values. In some languages, `Struct`\n * might be supported by a native representation. For example, in\n * scripting languages like JS a struct is represented as an\n * object. The details of that representation are described together\n * with the proto support for the language.\n *\n * The JSON representation for `Struct` is JSON object.\n */\nexport interface Struct {\n /** Unordered map of dynamically typed values. */\n fields: { [key: string]: any | undefined };\n}\n\nexport interface Struct_FieldsEntry {\n key: string;\n value: any | undefined;\n}\n\n/**\n * `Value` represents a dynamically typed value which can be either\n * null, a number, a string, a boolean, a recursive struct value, or a\n * list of values. A producer of value is expected to set one of these\n * variants. Absence of any variant indicates an error.\n *\n * The JSON representation for `Value` is JSON value.\n */\nexport interface Value {\n /** Represents a null value. */\n nullValue?:\n | NullValue\n | undefined;\n /** Represents a double value. */\n numberValue?:\n | number\n | undefined;\n /** Represents a string value. */\n stringValue?:\n | string\n | undefined;\n /** Represents a boolean value. */\n boolValue?:\n | boolean\n | undefined;\n /** Represents a structured value. */\n structValue?:\n | { [key: string]: any }\n | undefined;\n /** Represents a repeated `Value`. */\n listValue?: Array<any> | undefined;\n}\n\n/**\n * `ListValue` is a wrapper around a repeated field of values.\n *\n * The JSON representation for `ListValue` is JSON array.\n */\nexport interface ListValue {\n /** Repeated field of dynamically typed values. */\n values: any[];\n}\n\nfunction createBaseStruct(): Struct {\n return { fields: {} };\n}\n\nexport const Struct: MessageFns<Struct> & StructWrapperFns = {\n encode(message: Struct, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n Object.entries(message.fields).forEach(([key, value]) => {\n if (value !== undefined) {\n Struct_FieldsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();\n }\n });\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Struct {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStruct();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n const entry1 = Struct_FieldsEntry.decode(reader, reader.uint32());\n if (entry1.value !== undefined) {\n message.fields[entry1.key] = entry1.value;\n }\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<Struct>, I>>(base?: I): Struct {\n return Struct.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<Struct>, I>>(object: I): Struct {\n const message = createBaseStruct();\n message.fields = Object.entries(object.fields ?? {}).reduce<{ [key: string]: any | undefined }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = value;\n }\n return acc;\n },\n {},\n );\n return message;\n },\n\n wrap(object: { [key: string]: any } | undefined): Struct {\n const struct = createBaseStruct();\n\n if (object !== undefined) {\n for (const key of Object.keys(object)) {\n struct.fields[key] = object[key];\n }\n }\n return struct;\n },\n\n unwrap(message: Struct): { [key: string]: any } {\n const object: { [key: string]: any } = {};\n if (message.fields) {\n for (const key of Object.keys(message.fields)) {\n object[key] = message.fields[key];\n }\n }\n return object;\n },\n};\n\nfunction createBaseStruct_FieldsEntry(): Struct_FieldsEntry {\n return { key: \"\", value: undefined };\n}\n\nexport const Struct_FieldsEntry: MessageFns<Struct_FieldsEntry> = {\n encode(message: Struct_FieldsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== undefined) {\n Value.encode(Value.wrap(message.value), writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Struct_FieldsEntry {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStruct_FieldsEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.value = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<Struct_FieldsEntry>, I>>(base?: I): Struct_FieldsEntry {\n return Struct_FieldsEntry.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<Struct_FieldsEntry>, I>>(object: I): Struct_FieldsEntry {\n const message = createBaseStruct_FieldsEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? undefined;\n return message;\n },\n};\n\nfunction createBaseValue(): Value {\n return {\n nullValue: undefined,\n numberValue: undefined,\n stringValue: undefined,\n boolValue: undefined,\n structValue: undefined,\n listValue: undefined,\n };\n}\n\nexport const Value: MessageFns<Value> & AnyValueWrapperFns = {\n encode(message: Value, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.nullValue !== undefined) {\n writer.uint32(8).int32(message.nullValue);\n }\n if (message.numberValue !== undefined) {\n writer.uint32(17).double(message.numberValue);\n }\n if (message.stringValue !== undefined) {\n writer.uint32(26).string(message.stringValue);\n }\n if (message.boolValue !== undefined) {\n writer.uint32(32).bool(message.boolValue);\n }\n if (message.structValue !== undefined) {\n Struct.encode(Struct.wrap(message.structValue), writer.uint32(42).fork()).join();\n }\n if (message.listValue !== undefined) {\n ListValue.encode(ListValue.wrap(message.listValue), writer.uint32(50).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Value {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseValue();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.nullValue = reader.int32() as any;\n continue;\n }\n case 2: {\n if (tag !== 17) {\n break;\n }\n\n message.numberValue = reader.double();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.stringValue = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.boolValue = reader.bool();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.structValue = Struct.unwrap(Struct.decode(reader, reader.uint32()));\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.listValue = ListValue.unwrap(ListValue.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<Value>, I>>(base?: I): Value {\n return Value.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<Value>, I>>(object: I): Value {\n const message = createBaseValue();\n message.nullValue = object.nullValue ?? undefined;\n message.numberValue = object.numberValue ?? undefined;\n message.stringValue = object.stringValue ?? undefined;\n message.boolValue = object.boolValue ?? undefined;\n message.structValue = object.structValue ?? undefined;\n message.listValue = object.listValue ?? undefined;\n return message;\n },\n\n wrap(value: any): Value {\n const result = createBaseValue();\n if (value === null) {\n result.nullValue = NullValue.NULL_VALUE;\n } else if (typeof value === \"boolean\") {\n result.boolValue = value;\n } else if (typeof value === \"number\") {\n result.numberValue = value;\n } else if (typeof value === \"string\") {\n result.stringValue = value;\n } else if (globalThis.Array.isArray(value)) {\n result.listValue = value;\n } else if (typeof value === \"object\") {\n result.structValue = value;\n } else if (typeof value !== \"undefined\") {\n throw new globalThis.Error(\"Unsupported any value type: \" + typeof value);\n }\n return result;\n },\n\n unwrap(message: any): string | number | boolean | Object | null | Array<any> | undefined {\n if (message.stringValue !== undefined) {\n return message.stringValue;\n } else if (message?.numberValue !== undefined) {\n return message.numberValue;\n } else if (message?.boolValue !== undefined) {\n return message.boolValue;\n } else if (message?.structValue !== undefined) {\n return message.structValue as any;\n } else if (message?.listValue !== undefined) {\n return message.listValue;\n } else if (message?.nullValue !== undefined) {\n return null;\n }\n return undefined;\n },\n};\n\nfunction createBaseListValue(): ListValue {\n return { values: [] };\n}\n\nexport const ListValue: MessageFns<ListValue> & ListValueWrapperFns = {\n encode(message: ListValue, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.values) {\n Value.encode(Value.wrap(v!), writer.uint32(10).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ListValue {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseListValue();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.values.push(Value.unwrap(Value.decode(reader, reader.uint32())));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ListValue>, I>>(base?: I): ListValue {\n return ListValue.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ListValue>, I>>(object: I): ListValue {\n const message = createBaseListValue();\n message.values = object.values?.map((e) => e) || [];\n return message;\n },\n\n wrap(array: Array<any> | undefined): ListValue {\n const result = createBaseListValue();\n result.values = array ?? [];\n return result;\n },\n\n unwrap(message: ListValue): Array<any> {\n if (message?.hasOwnProperty(\"values\") && globalThis.Array.isArray(message.values)) {\n return message.values;\n } else {\n return message as any;\n }\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin ? T\n : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };\n\nexport interface MessageFns<T> {\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;\n fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;\n}\n\nexport interface StructWrapperFns {\n wrap(object: { [key: string]: any } | undefined): Struct;\n unwrap(message: Struct): { [key: string]: any };\n}\n\nexport interface AnyValueWrapperFns {\n wrap(value: any): Value;\n unwrap(message: any): string | number | boolean | Object | null | Array<any> | undefined;\n}\n\nexport interface ListValueWrapperFns {\n wrap(array: Array<any> | undefined): ListValue;\n unwrap(message: ListValue): Array<any>;\n}\n","// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc v5.29.3\n// source: patch.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\nimport { Value } from \"./google/protobuf/struct\";\n\nexport const protobufPackage = \"ag_ui\";\n\nexport enum JsonPatchOperationType {\n ADD = 0,\n REMOVE = 1,\n REPLACE = 2,\n MOVE = 3,\n COPY = 4,\n TEST = 5,\n UNRECOGNIZED = -1,\n}\n\nexport interface JsonPatchOperation {\n op: JsonPatchOperationType;\n path: string;\n from?: string | undefined;\n value?: any | undefined;\n}\n\nfunction createBaseJsonPatchOperation(): JsonPatchOperation {\n return { op: 0, path: \"\", from: undefined, value: undefined };\n}\n\nexport const JsonPatchOperation: MessageFns<JsonPatchOperation> = {\n encode(message: JsonPatchOperation, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.op !== 0) {\n writer.uint32(8).int32(message.op);\n }\n if (message.path !== \"\") {\n writer.uint32(18).string(message.path);\n }\n if (message.from !== undefined) {\n writer.uint32(26).string(message.from);\n }\n if (message.value !== undefined) {\n Value.encode(Value.wrap(message.value), writer.uint32(34).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): JsonPatchOperation {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseJsonPatchOperation();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.op = reader.int32() as any;\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.path = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.from = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.value = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<JsonPatchOperation>, I>>(base?: I): JsonPatchOperation {\n return JsonPatchOperation.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<JsonPatchOperation>, I>>(object: I): JsonPatchOperation {\n const message = createBaseJsonPatchOperation();\n message.op = object.op ?? 0;\n message.path = object.path ?? \"\";\n message.from = object.from ?? undefined;\n message.value = object.value ?? undefined;\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin ? T\n : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };\n\nexport interface MessageFns<T> {\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;\n fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;\n}\n","// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc v5.29.3\n// source: types.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\n\nexport const protobufPackage = \"ag_ui\";\n\nexport interface ToolCall {\n id: string;\n type: string;\n function: ToolCall_Function | undefined;\n}\n\nexport interface ToolCall_Function {\n name: string;\n arguments: string;\n}\n\nexport interface Message {\n id: string;\n role: string;\n content?: string | undefined;\n name?: string | undefined;\n toolCalls: ToolCall[];\n toolCallId?: string | undefined;\n error?: string | undefined;\n}\n\nfunction createBaseToolCall(): ToolCall {\n return { id: \"\", type: \"\", function: undefined };\n}\n\nexport const ToolCall: MessageFns<ToolCall> = {\n encode(message: ToolCall, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n if (message.type !== \"\") {\n writer.uint32(18).string(message.type);\n }\n if (message.function !== undefined) {\n ToolCall_Function.encode(message.function, writer.uint32(26).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ToolCall {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseToolCall();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.id = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.type = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.function = ToolCall_Function.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ToolCall>, I>>(base?: I): ToolCall {\n return ToolCall.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ToolCall>, I>>(object: I): ToolCall {\n const message = createBaseToolCall();\n message.id = object.id ?? \"\";\n message.type = object.type ?? \"\";\n message.function = (object.function !== undefined && object.function !== null)\n ? ToolCall_Function.fromPartial(object.function)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseToolCall_Function(): ToolCall_Function {\n return { name: \"\", arguments: \"\" };\n}\n\nexport const ToolCall_Function: MessageFns<ToolCall_Function> = {\n encode(message: ToolCall_Function, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.name !== \"\") {\n writer.uint32(10).string(message.name);\n }\n if (message.arguments !== \"\") {\n writer.uint32(18).string(message.arguments);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ToolCall_Function {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseToolCall_Function();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.arguments = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ToolCall_Function>, I>>(base?: I): ToolCall_Function {\n return ToolCall_Function.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ToolCall_Function>, I>>(object: I): ToolCall_Function {\n const message = createBaseToolCall_Function();\n message.name = object.name ?? \"\";\n message.arguments = object.arguments ?? \"\";\n return message;\n },\n};\n\nfunction createBaseMessage(): Message {\n return {\n id: \"\",\n role: \"\",\n content: undefined,\n name: undefined,\n toolCalls: [],\n toolCallId: undefined,\n error: undefined,\n };\n}\n\nexport const Message: MessageFns<Message> = {\n encode(message: Message, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n if (message.role !== \"\") {\n writer.uint32(18).string(message.role);\n }\n if (message.content !== undefined) {\n writer.uint32(26).string(message.content);\n }\n if (message.name !== undefined) {\n writer.uint32(34).string(message.name);\n }\n for (const v of message.toolCalls) {\n ToolCall.encode(v!, writer.uint32(42).fork()).join();\n }\n if (message.toolCallId !== undefined) {\n writer.uint32(50).string(message.toolCallId);\n }\n if (message.error !== undefined) {\n writer.uint32(58).string(message.error);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Message {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMessage();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.id = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.role = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.content = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.toolCalls.push(ToolCall.decode(reader, reader.uint32()));\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.toolCallId = reader.string();\n continue;\n }\n case 7: {\n if (tag !== 58) {\n break;\n }\n\n message.error = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<Message>, I>>(base?: I): Message {\n return Message.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<Message>, I>>(object: I): Message {\n const message = createBaseMessage();\n message.id = object.id ?? \"\";\n message.role = object.role ?? \"\";\n message.content = object.content ?? undefined;\n message.name = object.name ?? undefined;\n message.toolCalls = object.toolCalls?.map((e) => ToolCall.fromPartial(e)) || [];\n message.toolCallId = object.toolCallId ?? undefined;\n message.error = object.error ?? undefined;\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin ? T\n : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };\n\nexport interface MessageFns<T> {\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;\n fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;\n}\n","// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc v5.29.3\n// source: events.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\nimport { Value } from \"./google/protobuf/struct\";\nimport { JsonPatchOperation } from \"./patch\";\nimport { Message } from \"./types\";\n\nexport const protobufPackage = \"ag_ui\";\n\nexport enum EventType {\n TEXT_MESSAGE_START = 0,\n TEXT_MESSAGE_CONTENT = 1,\n TEXT_MESSAGE_END = 2,\n TOOL_CALL_START = 3,\n TOOL_CALL_ARGS = 4,\n TOOL_CALL_END = 5,\n STATE_SNAPSHOT = 6,\n STATE_DELTA = 7,\n MESSAGES_SNAPSHOT = 8,\n RAW = 9,\n CUSTOM = 10,\n RUN_STARTED = 11,\n RUN_FINISHED = 12,\n RUN_ERROR = 13,\n STEP_STARTED = 14,\n STEP_FINISHED = 15,\n UNRECOGNIZED = -1,\n}\n\nexport interface BaseEvent {\n type: EventType;\n timestamp?: number | undefined;\n rawEvent?: any | undefined;\n}\n\nexport interface TextMessageStartEvent {\n baseEvent: BaseEvent | undefined;\n messageId: string;\n role?: string | undefined;\n}\n\nexport interface TextMessageContentEvent {\n baseEvent: BaseEvent | undefined;\n messageId: string;\n delta: string;\n}\n\nexport interface TextMessageEndEvent {\n baseEvent: BaseEvent | undefined;\n messageId: string;\n}\n\nexport interface ToolCallStartEvent {\n baseEvent: BaseEvent | undefined;\n toolCallId: string;\n toolCallName: string;\n parentMessageId?: string | undefined;\n}\n\nexport interface ToolCallArgsEvent {\n baseEvent: BaseEvent | undefined;\n toolCallId: string;\n delta: string;\n}\n\nexport interface ToolCallEndEvent {\n baseEvent: BaseEvent | undefined;\n toolCallId: string;\n}\n\nexport interface StateSnapshotEvent {\n baseEvent: BaseEvent | undefined;\n snapshot: any | undefined;\n}\n\nexport interface StateDeltaEvent {\n baseEvent: BaseEvent | undefined;\n delta: JsonPatchOperation[];\n}\n\nexport interface MessagesSnapshotEvent {\n baseEvent: BaseEvent | undefined;\n messages: Message[];\n}\n\nexport interface RawEvent {\n baseEvent: BaseEvent | undefined;\n event: any | undefined;\n source?: string | undefined;\n}\n\nexport interface CustomEvent {\n baseEvent: BaseEvent | undefined;\n name: string;\n value?: any | undefined;\n}\n\nexport interface RunStartedEvent {\n baseEvent: BaseEvent | undefined;\n threadId: string;\n runId: string;\n}\n\nexport interface RunFinishedEvent {\n baseEvent: BaseEvent | undefined;\n threadId: string;\n runId: string;\n result?: any | undefined;\n}\n\nexport interface RunErrorEvent {\n baseEvent: BaseEvent | undefined;\n code?: string | undefined;\n message: string;\n}\n\nexport interface StepStartedEvent {\n baseEvent: BaseEvent | undefined;\n stepName: string;\n}\n\nexport interface StepFinishedEvent {\n baseEvent: BaseEvent | undefined;\n stepName: string;\n}\n\nexport interface TextMessageChunkEvent {\n baseEvent: BaseEvent | undefined;\n messageId?: string | undefined;\n role?: string | undefined;\n delta?: string | undefined;\n}\n\nexport interface ToolCallChunkEvent {\n baseEvent: BaseEvent | undefined;\n toolCallId?: string | undefined;\n toolCallName?: string | undefined;\n parentMessageId?: string | undefined;\n delta?: string | undefined;\n}\n\nexport interface Event {\n textMessageStart?: TextMessageStartEvent | undefined;\n textMessageContent?: TextMessageContentEvent | undefined;\n textMessageEnd?: TextMessageEndEvent | undefined;\n toolCallStart?: ToolCallStartEvent | undefined;\n toolCallArgs?: ToolCallArgsEvent | undefined;\n toolCallEnd?: ToolCallEndEvent | undefined;\n stateSnapshot?: StateSnapshotEvent | undefined;\n stateDelta?: StateDeltaEvent | undefined;\n messagesSnapshot?: MessagesSnapshotEvent | undefined;\n raw?: RawEvent | undefined;\n custom?: CustomEvent | undefined;\n runStarted?: RunStartedEvent | undefined;\n runFinished?: RunFinishedEvent | undefined;\n runError?: RunErrorEvent | undefined;\n stepStarted?: StepStartedEvent | undefined;\n stepFinished?: StepFinishedEvent | undefined;\n textMessageChunk?: TextMessageChunkEvent | undefined;\n toolCallChunk?: ToolCallChunkEvent | undefined;\n}\n\nfunction createBaseBaseEvent(): BaseEvent {\n return { type: 0, timestamp: undefined, rawEvent: undefined };\n}\n\nexport const BaseEvent: MessageFns<BaseEvent> = {\n encode(message: BaseEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.type !== 0) {\n writer.uint32(8).int32(message.type);\n }\n if (message.timestamp !== undefined) {\n writer.uint32(16).int64(message.timestamp);\n }\n if (message.rawEvent !== undefined) {\n Value.encode(Value.wrap(message.rawEvent), writer.uint32(26).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): BaseEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseBaseEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.type = reader.int32() as any;\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.timestamp = longToNumber(reader.int64());\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.rawEvent = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<BaseEvent>, I>>(base?: I): BaseEvent {\n return BaseEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<BaseEvent>, I>>(object: I): BaseEvent {\n const message = createBaseBaseEvent();\n message.type = object.type ?? 0;\n message.timestamp = object.timestamp ?? undefined;\n message.rawEvent = object.rawEvent ?? undefined;\n return message;\n },\n};\n\nfunction createBaseTextMessageStartEvent(): TextMessageStartEvent {\n return { baseEvent: undefined, messageId: \"\", role: undefined };\n}\n\nexport const TextMessageStartEvent: MessageFns<TextMessageStartEvent> = {\n encode(message: TextMessageStartEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.messageId !== \"\") {\n writer.uint32(18).string(message.messageId);\n }\n if (message.role !== undefined) {\n writer.uint32(26).string(message.role);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): TextMessageStartEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTextMessageStartEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.messageId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.role = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<TextMessageStartEvent>, I>>(base?: I): TextMessageStartEvent {\n return TextMessageStartEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<TextMessageStartEvent>, I>>(object: I): TextMessageStartEvent {\n const message = createBaseTextMessageStartEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.messageId = object.messageId ?? \"\";\n message.role = object.role ?? undefined;\n return message;\n },\n};\n\nfunction createBaseTextMessageContentEvent(): TextMessageContentEvent {\n return { baseEvent: undefined, messageId: \"\", delta: \"\" };\n}\n\nexport const TextMessageContentEvent: MessageFns<TextMessageContentEvent> = {\n encode(message: TextMessageContentEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.messageId !== \"\") {\n writer.uint32(18).string(message.messageId);\n }\n if (message.delta !== \"\") {\n writer.uint32(26).string(message.delta);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): TextMessageContentEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTextMessageContentEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.messageId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.delta = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<TextMessageContentEvent>, I>>(base?: I): TextMessageContentEvent {\n return TextMessageContentEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<TextMessageContentEvent>, I>>(object: I): TextMessageContentEvent {\n const message = createBaseTextMessageContentEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.messageId = object.messageId ?? \"\";\n message.delta = object.delta ?? \"\";\n return message;\n },\n};\n\nfunction createBaseTextMessageEndEvent(): TextMessageEndEvent {\n return { baseEvent: undefined, messageId: \"\" };\n}\n\nexport const TextMessageEndEvent: MessageFns<TextMessageEndEvent> = {\n encode(message: TextMessageEndEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.messageId !== \"\") {\n writer.uint32(18).string(message.messageId);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): TextMessageEndEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTextMessageEndEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.messageId = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<TextMessageEndEvent>, I>>(base?: I): TextMessageEndEvent {\n return TextMessageEndEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<TextMessageEndEvent>, I>>(object: I): TextMessageEndEvent {\n const message = createBaseTextMessageEndEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.messageId = object.messageId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseToolCallStartEvent(): ToolCallStartEvent {\n return { baseEvent: undefined, toolCallId: \"\", toolCallName: \"\", parentMessageId: undefined };\n}\n\nexport const ToolCallStartEvent: MessageFns<ToolCallStartEvent> = {\n encode(message: ToolCallStartEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.toolCallId !== \"\") {\n writer.uint32(18).string(message.toolCallId);\n }\n if (message.toolCallName !== \"\") {\n writer.uint32(26).string(message.toolCallName);\n }\n if (message.parentMessageId !== undefined) {\n writer.uint32(34).string(message.parentMessageId);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ToolCallStartEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseToolCallStartEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.toolCallId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.toolCallName = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.parentMessageId = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ToolCallStartEvent>, I>>(base?: I): ToolCallStartEvent {\n return ToolCallStartEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ToolCallStartEvent>, I>>(object: I): ToolCallStartEvent {\n const message = createBaseToolCallStartEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.toolCallId = object.toolCallId ?? \"\";\n message.toolCallName = object.toolCallName ?? \"\";\n message.parentMessageId = object.parentMessageId ?? undefined;\n return message;\n },\n};\n\nfunction createBaseToolCallArgsEvent(): ToolCallArgsEvent {\n return { baseEvent: undefined, toolCallId: \"\", delta: \"\" };\n}\n\nexport const ToolCallArgsEvent: MessageFns<ToolCallArgsEvent> = {\n encode(message: ToolCallArgsEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.toolCallId !== \"\") {\n writer.uint32(18).string(message.toolCallId);\n }\n if (message.delta !== \"\") {\n writer.uint32(26).string(message.delta);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ToolCallArgsEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseToolCallArgsEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.toolCallId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.delta = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ToolCallArgsEvent>, I>>(base?: I): ToolCallArgsEvent {\n return ToolCallArgsEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ToolCallArgsEvent>, I>>(object: I): ToolCallArgsEvent {\n const message = createBaseToolCallArgsEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.toolCallId = object.toolCallId ?? \"\";\n message.delta = object.delta ?? \"\";\n return message;\n },\n};\n\nfunction createBaseToolCallEndEvent(): ToolCallEndEvent {\n return { baseEvent: undefined, toolCallId: \"\" };\n}\n\nexport const ToolCallEndEvent: MessageFns<ToolCallEndEvent> = {\n encode(message: ToolCallEndEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.toolCallId !== \"\") {\n writer.uint32(18).string(message.toolCallId);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ToolCallEndEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseToolCallEndEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.toolCallId = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ToolCallEndEvent>, I>>(base?: I): ToolCallEndEvent {\n return ToolCallEndEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ToolCallEndEvent>, I>>(object: I): ToolCallEndEvent {\n const message = createBaseToolCallEndEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.toolCallId = object.toolCallId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseStateSnapshotEvent(): StateSnapshotEvent {\n return { baseEvent: undefined, snapshot: undefined };\n}\n\nexport const StateSnapshotEvent: MessageFns<StateSnapshotEvent> = {\n encode(message: StateSnapshotEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.snapshot !== undefined) {\n Value.encode(Value.wrap(message.snapshot), writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): StateSnapshotEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStateSnapshotEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.snapshot = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<StateSnapshotEvent>, I>>(base?: I): StateSnapshotEvent {\n return StateSnapshotEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<StateSnapshotEvent>, I>>(object: I): StateSnapshotEvent {\n const message = createBaseStateSnapshotEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.snapshot = object.snapshot ?? undefined;\n return message;\n },\n};\n\nfunction createBaseStateDeltaEvent(): StateDeltaEvent {\n return { baseEvent: undefined, delta: [] };\n}\n\nexport const StateDeltaEvent: MessageFns<StateDeltaEvent> = {\n encode(message: StateDeltaEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n for (const v of message.delta) {\n JsonPatchOperation.encode(v!, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): StateDeltaEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStateDeltaEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.delta.push(JsonPatchOperation.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<StateDeltaEvent>, I>>(base?: I): StateDeltaEvent {\n return StateDeltaEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<StateDeltaEvent>, I>>(object: I): StateDeltaEvent {\n const message = createBaseStateDeltaEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.delta = object.delta?.map((e) => JsonPatchOperation.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseMessagesSnapshotEvent(): MessagesSnapshotEvent {\n return { baseEvent: undefined, messages: [] };\n}\n\nexport const MessagesSnapshotEvent: MessageFns<MessagesSnapshotEvent> = {\n encode(message: MessagesSnapshotEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n for (const v of message.messages) {\n Message.encode(v!, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): MessagesSnapshotEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMessagesSnapshotEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.messages.push(Message.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<MessagesSnapshotEvent>, I>>(base?: I): MessagesSnapshotEvent {\n return MessagesSnapshotEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<MessagesSnapshotEvent>, I>>(object: I): MessagesSnapshotEvent {\n const message = createBaseMessagesSnapshotEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.messages = object.messages?.map((e) => Message.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseRawEvent(): RawEvent {\n return { baseEvent: undefined, event: undefined, source: undefined };\n}\n\nexport const RawEvent: MessageFns<RawEvent> = {\n encode(message: RawEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.event !== undefined) {\n Value.encode(Value.wrap(message.event), writer.uint32(18).fork()).join();\n }\n if (message.source !== undefined) {\n writer.uint32(26).string(message.source);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RawEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRawEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.event = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.source = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RawEvent>, I>>(base?: I): RawEvent {\n return RawEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RawEvent>, I>>(object: I): RawEvent {\n const message = createBaseRawEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.event = object.event ?? undefined;\n message.source = object.source ?? undefined;\n return message;\n },\n};\n\nfunction createBaseCustomEvent(): CustomEvent {\n return { baseEvent: undefined, name: \"\", value: undefined };\n}\n\nexport const CustomEvent: MessageFns<CustomEvent> = {\n encode(message: CustomEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.name !== \"\") {\n writer.uint32(18).string(message.name);\n }\n if (message.value !== undefined) {\n Value.encode(Value.wrap(message.value), writer.uint32(26).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): CustomEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCustomEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.name = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.value = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<CustomEvent>, I>>(base?: I): CustomEvent {\n return CustomEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<CustomEvent>, I>>(object: I): CustomEvent {\n const message = createBaseCustomEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.name = object.name ?? \"\";\n message.value = object.value ?? undefined;\n return message;\n },\n};\n\nfunction createBaseRunStartedEvent(): RunStartedEvent {\n return { baseEvent: undefined, threadId: \"\", runId: \"\" };\n}\n\nexport const RunStartedEvent: MessageFns<RunStartedEvent> = {\n encode(message: RunStartedEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.threadId !== \"\") {\n writer.uint32(18).string(message.threadId);\n }\n if (message.runId !== \"\") {\n writer.uint32(26).string(message.runId);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RunStartedEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRunStartedEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.threadId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.runId = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RunStartedEvent>, I>>(base?: I): RunStartedEvent {\n return RunStartedEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RunStartedEvent>, I>>(object: I): RunStartedEvent {\n const message = createBaseRunStartedEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.threadId = object.threadId ?? \"\";\n message.runId = object.runId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRunFinishedEvent(): RunFinishedEvent {\n return { baseEvent: undefined, threadId: \"\", runId: \"\", result: undefined };\n}\n\nexport const RunFinishedEvent: MessageFns<RunFinishedEvent> = {\n encode(message: RunFinishedEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.threadId !== \"\") {\n writer.uint32(18).string(message.threadId);\n }\n if (message.runId !== \"\") {\n writer.uint32(26).string(message.runId);\n }\n if (message.result !== undefined) {\n Value.encode(Value.wrap(message.result), writer.uint32(34).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RunFinishedEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRunFinishedEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.threadId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.runId = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.result = Value.unwrap(Value.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RunFinishedEvent>, I>>(base?: I): RunFinishedEvent {\n return RunFinishedEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RunFinishedEvent>, I>>(object: I): RunFinishedEvent {\n const message = createBaseRunFinishedEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.threadId = object.threadId ?? \"\";\n message.runId = object.runId ?? \"\";\n message.result = object.result ?? undefined;\n return message;\n },\n};\n\nfunction createBaseRunErrorEvent(): RunErrorEvent {\n return { baseEvent: undefined, code: undefined, message: \"\" };\n}\n\nexport const RunErrorEvent: MessageFns<RunErrorEvent> = {\n encode(message: RunErrorEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.code !== undefined) {\n writer.uint32(18).string(message.code);\n }\n if (message.message !== \"\") {\n writer.uint32(26).string(message.message);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): RunErrorEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRunErrorEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.code = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.message = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<RunErrorEvent>, I>>(base?: I): RunErrorEvent {\n return RunErrorEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<RunErrorEvent>, I>>(object: I): RunErrorEvent {\n const message = createBaseRunErrorEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.code = object.code ?? undefined;\n message.message = object.message ?? \"\";\n return message;\n },\n};\n\nfunction createBaseStepStartedEvent(): StepStartedEvent {\n return { baseEvent: undefined, stepName: \"\" };\n}\n\nexport const StepStartedEvent: MessageFns<StepStartedEvent> = {\n encode(message: StepStartedEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.stepName !== \"\") {\n writer.uint32(18).string(message.stepName);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): StepStartedEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStepStartedEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.stepName = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<StepStartedEvent>, I>>(base?: I): StepStartedEvent {\n return StepStartedEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<StepStartedEvent>, I>>(object: I): StepStartedEvent {\n const message = createBaseStepStartedEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.stepName = object.stepName ?? \"\";\n return message;\n },\n};\n\nfunction createBaseStepFinishedEvent(): StepFinishedEvent {\n return { baseEvent: undefined, stepName: \"\" };\n}\n\nexport const StepFinishedEvent: MessageFns<StepFinishedEvent> = {\n encode(message: StepFinishedEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.stepName !== \"\") {\n writer.uint32(18).string(message.stepName);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): StepFinishedEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStepFinishedEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.stepName = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<StepFinishedEvent>, I>>(base?: I): StepFinishedEvent {\n return StepFinishedEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<StepFinishedEvent>, I>>(object: I): StepFinishedEvent {\n const message = createBaseStepFinishedEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.stepName = object.stepName ?? \"\";\n return message;\n },\n};\n\nfunction createBaseTextMessageChunkEvent(): TextMessageChunkEvent {\n return { baseEvent: undefined, messageId: undefined, role: undefined, delta: undefined };\n}\n\nexport const TextMessageChunkEvent: MessageFns<TextMessageChunkEvent> = {\n encode(message: TextMessageChunkEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.messageId !== undefined) {\n writer.uint32(18).string(message.messageId);\n }\n if (message.role !== undefined) {\n writer.uint32(26).string(message.role);\n }\n if (message.delta !== undefined) {\n writer.uint32(34).string(message.delta);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): TextMessageChunkEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTextMessageChunkEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.messageId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.role = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.delta = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<TextMessageChunkEvent>, I>>(base?: I): TextMessageChunkEvent {\n return TextMessageChunkEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<TextMessageChunkEvent>, I>>(object: I): TextMessageChunkEvent {\n const message = createBaseTextMessageChunkEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.messageId = object.messageId ?? undefined;\n message.role = object.role ?? undefined;\n message.delta = object.delta ?? undefined;\n return message;\n },\n};\n\nfunction createBaseToolCallChunkEvent(): ToolCallChunkEvent {\n return {\n baseEvent: undefined,\n toolCallId: undefined,\n toolCallName: undefined,\n parentMessageId: undefined,\n delta: undefined,\n };\n}\n\nexport const ToolCallChunkEvent: MessageFns<ToolCallChunkEvent> = {\n encode(message: ToolCallChunkEvent, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.baseEvent !== undefined) {\n BaseEvent.encode(message.baseEvent, writer.uint32(10).fork()).join();\n }\n if (message.toolCallId !== undefined) {\n writer.uint32(18).string(message.toolCallId);\n }\n if (message.toolCallName !== undefined) {\n writer.uint32(26).string(message.toolCallName);\n }\n if (message.parentMessageId !== undefined) {\n writer.uint32(34).string(message.parentMessageId);\n }\n if (message.delta !== undefined) {\n writer.uint32(42).string(message.delta);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): ToolCallChunkEvent {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseToolCallChunkEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.baseEvent = BaseEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.toolCallId = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.toolCallName = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.parentMessageId = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.delta = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<ToolCallChunkEvent>, I>>(base?: I): ToolCallChunkEvent {\n return ToolCallChunkEvent.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<ToolCallChunkEvent>, I>>(object: I): ToolCallChunkEvent {\n const message = createBaseToolCallChunkEvent();\n message.baseEvent = (object.baseEvent !== undefined && object.baseEvent !== null)\n ? BaseEvent.fromPartial(object.baseEvent)\n : undefined;\n message.toolCallId = object.toolCallId ?? undefined;\n message.toolCallName = object.toolCallName ?? undefined;\n message.parentMessageId = object.parentMessageId ?? undefined;\n message.delta = object.delta ?? undefined;\n return message;\n },\n};\n\nfunction createBaseEvent(): Event {\n return {\n textMessageStart: undefined,\n textMessageContent: undefined,\n textMessageEnd: undefined,\n toolCallStart: undefined,\n toolCallArgs: undefined,\n toolCallEnd: undefined,\n stateSnapshot: undefined,\n stateDelta: undefined,\n messagesSnapshot: undefined,\n raw: undefined,\n custom: undefined,\n runStarted: undefined,\n runFinished: undefined,\n runError: undefined,\n stepStarted: undefined,\n stepFinished: undefined,\n textMessageChunk: undefined,\n toolCallChunk: undefined,\n };\n}\n\nexport const Event: MessageFns<Event> = {\n encode(message: Event, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.textMessageStart !== undefined) {\n TextMessageStartEvent.encode(message.textMessageStart, writer.uint32(10).fork()).join();\n }\n if (message.textMessageContent !== undefined) {\n TextMessageContentEvent.encode(message.textMessageContent, writer.uint32(18).fork()).join();\n }\n if (message.textMessageEnd !== undefined) {\n TextMessageEndEvent.encode(message.textMessageEnd, writer.uint32(26).fork()).join();\n }\n if (message.toolCallStart !== undefined) {\n ToolCallStartEvent.encode(message.toolCallStart, writer.uint32(34).fork()).join();\n }\n if (message.toolCallArgs !== undefined) {\n ToolCallArgsEvent.encode(message.toolCallArgs, writer.uint32(42).fork()).join();\n }\n if (message.toolCallEnd !== undefined) {\n ToolCallEndEvent.encode(message.toolCallEnd, writer.uint32(50).fork()).join();\n }\n if (message.stateSnapshot !== undefined) {\n StateSnapshotEvent.encode(message.stateSnapshot, writer.uint32(58).fork()).join();\n }\n if (message.stateDelta !== undefined) {\n StateDeltaEvent.encode(message.stateDelta, writer.uint32(66).fork()).join();\n }\n if (message.messagesSnapshot !== undefined) {\n MessagesSnapshotEvent.encode(message.messagesSnapshot, writer.uint32(74).fork()).join();\n }\n if (message.raw !== undefined) {\n RawEvent.encode(message.raw, writer.uint32(82).fork()).join();\n }\n if (message.custom !== undefined) {\n CustomEvent.encode(message.custom, writer.uint32(90).fork()).join();\n }\n if (message.runStarted !== undefined) {\n RunStartedEvent.encode(message.runStarted, writer.uint32(98).fork()).join();\n }\n if (message.runFinished !== undefined) {\n RunFinishedEvent.encode(message.runFinished, writer.uint32(106).fork()).join();\n }\n if (message.runError !== undefined) {\n RunErrorEvent.encode(message.runError, writer.uint32(114).fork()).join();\n }\n if (message.stepStarted !== undefined) {\n StepStartedEvent.encode(message.stepStarted, writer.uint32(122).fork()).join();\n }\n if (message.stepFinished !== undefined) {\n StepFinishedEvent.encode(message.stepFinished, writer.uint32(130).fork()).join();\n }\n if (message.textMessageChunk !== undefined) {\n TextMessageChunkEvent.encode(message.textMessageChunk, writer.uint32(138).fork()).join();\n }\n if (message.toolCallChunk !== undefined) {\n ToolCallChunkEvent.encode(message.toolCallChunk, writer.uint32(146).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Event {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseEvent();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.textMessageStart = TextMessageStartEvent.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.textMessageContent = TextMessageContentEvent.decode(reader, reader.uint32());\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.textMessageEnd = TextMessageEndEvent.decode(reader, reader.uint32());\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.toolCallStart = ToolCallStartEvent.decode(reader, reader.uint32());\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.toolCallArgs = ToolCallArgsEvent.decode(reader, reader.uint32());\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.toolCallEnd = ToolCallEndEvent.decode(reader, reader.uint32());\n continue;\n }\n case 7: {\n if (tag !== 58) {\n break;\n }\n\n message.stateSnapshot = StateSnapshotEvent.decode(reader, reader.uint32());\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.stateDelta = StateDeltaEvent.decode(reader, reader.uint32());\n continue;\n }\n case 9: {\n if (tag !== 74) {\n break;\n }\n\n message.messagesSnapshot = MessagesSnapshotEvent.decode(reader, reader.uint32());\n continue;\n }\n case 10: {\n if (tag !== 82) {\n break;\n }\n\n message.raw = RawEvent.decode(reader, reader.uint32());\n continue;\n }\n case 11: {\n if (tag !== 90) {\n break;\n }\n\n message.custom = CustomEvent.decode(reader, reader.uint32());\n continue;\n }\n case 12: {\n if (tag !== 98) {\n break;\n }\n\n message.runStarted = RunStartedEvent.decode(reader, reader.uint32());\n continue;\n }\n case 13: {\n if (tag !== 106) {\n break;\n }\n\n message.runFinished = RunFinishedEvent.decode(reader, reader.uint32());\n continue;\n }\n case 14: {\n if (tag !== 114) {\n break;\n }\n\n message.runError = RunErrorEvent.decode(reader, reader.uint32());\n continue;\n }\n case 15: {\n if (tag !== 122) {\n break;\n }\n\n message.stepStarted = StepStartedEvent.decode(reader, reader.uint32());\n continue;\n }\n case 16: {\n if (tag !== 130) {\n break;\n }\n\n message.stepFinished = StepFinishedEvent.decode(reader, reader.uint32());\n continue;\n }\n case 17: {\n if (tag !== 138) {\n break;\n }\n\n message.textMessageChunk = TextMessageChunkEvent.decode(reader, reader.uint32());\n continue;\n }\n case 18: {\n if (tag !== 146) {\n break;\n }\n\n message.toolCallChunk = ToolCallChunkEvent.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n create<I extends Exact<DeepPartial<Event>, I>>(base?: I): Event {\n return Event.fromPartial(base ?? ({} as any));\n },\n fromPartial<I extends Exact<DeepPartial<Event>, I>>(object: I): Event {\n const message = createBaseEvent();\n message.textMessageStart = (object.textMessageStart !== undefined && object.textMessageStart !== null)\n ? TextMessageStartEvent.fromPartial(object.textMessageStart)\n : undefined;\n message.textMessageContent = (object.textMessageContent !== undefined && object.textMessageContent !== null)\n ? TextMessageContentEvent.fromPartial(object.textMessageContent)\n : undefined;\n message.textMessageEnd = (object.textMessageEnd !== undefined && object.textMessageEnd !== null)\n ? TextMessageEndEvent.fromPartial(object.textMessageEnd)\n : undefined;\n message.toolCallStart = (object.toolCallStart !== undefined && object.toolCallStart !== null)\n ? ToolCallStartEvent.fromPartial(object.toolCallStart)\n : undefined;\n message.toolCallArgs = (object.toolCallArgs !== undefined && object.toolCallArgs !== null)\n ? ToolCallArgsEvent.fromPartial(object.toolCallArgs)\n : undefined;\n message.toolCallEnd = (object.toolCallEnd !== undefined && object.toolCallEnd !== null)\n ? ToolCallEndEvent.fromPartial(object.toolCallEnd)\n : undefined;\n message.stateSnapshot = (object.stateSnapshot !== undefined && object.stateSnapshot !== null)\n ? StateSnapshotEvent.fromPartial(object.stateSnapshot)\n : undefined;\n message.stateDelta = (object.stateDelta !== undefined && object.stateDelta !== null)\n ? StateDeltaEvent.fromPartial(object.stateDelta)\n : undefined;\n message.messagesSnapshot = (object.messagesSnapshot !== undefined && object.messagesSnapshot !== null)\n ? MessagesSnapshotEvent.fromPartial(object.messagesSnapshot)\n : undefined;\n message.raw = (object.raw !== undefined && object.raw !== null) ? RawEvent.fromPartial(object.raw) : undefined;\n message.custom = (object.custom !== undefined && object.custom !== null)\n ? CustomEvent.fromPartial(object.custom)\n : undefined;\n message.runStarted = (object.runStarted !== undefined && object.runStarted !== null)\n ? RunStartedEvent.fromPartial(object.runStarted)\n : undefined;\n message.runFinished = (object.runFinished !== undefined && object.runFinished !== null)\n ? RunFinishedEvent.fromPartial(object.runFinished)\n : undefined;\n message.runError = (object.runError !== undefined && object.runError !== null)\n ? RunErrorEvent.fromPartial(object.runError)\n : undefined;\n message.stepStarted = (object.stepStarted !== undefined && object.stepStarted !== null)\n ? StepStartedEvent.fromPartial(object.stepStarted)\n : undefined;\n message.stepFinished = (object.stepFinished !== undefined && object.stepFinished !== null)\n ? StepFinishedEvent.fromPartial(object.stepFinished)\n : undefined;\n message.textMessageChunk = (object.textMessageChunk !== undefined && object.textMessageChunk !== null)\n ? TextMessageChunkEvent.fromPartial(object.textMessageChunk)\n : undefined;\n message.toolCallChunk = (object.toolCallChunk !== undefined && object.toolCallChunk !== null)\n ? ToolCallChunkEvent.fromPartial(object.toolCallChunk)\n : undefined;\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin ? T\n : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };\n\nfunction longToNumber(int64: { toString(): string }): number {\n const num = globalThis.Number(int64.toString());\n if (num > globalThis.Number.MAX_SAFE_INTEGER) {\n throw new globalThis.Error(\"Value is larger than Number.MAX_SAFE_INTEGER\");\n }\n if (num < globalThis.Number.MIN_SAFE_INTEGER) {\n throw new globalThis.Error(\"Value is smaller than Number.MIN_SAFE_INTEGER\");\n }\n return num;\n}\n\nexport interface MessageFns<T> {\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n create<I extends Exact<DeepPartial<T>, I>>(base?: I): T;\n fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T;\n}\n","import { BaseEvent, AGUIEvent, EventSchemas, EventType, Message } from \"@ag-ui/core\";\nimport * as protoEvents from \"./generated/events\";\nimport * as protoPatch from \"./generated/patch\";\n\nfunction toCamelCase(str: string): string {\n return str.toLowerCase().replace(/_([a-z])/g, (_, letter) => letter.toUpperCase());\n}\n\n/**\n * Encodes an event message to a protocol buffer binary format.\n */\nexport function encode(event: BaseEvent): Uint8Array {\n /**\n * In previous versions of AG-UI, we didn't really validate the events\n * against a schema. With stronger types for events and Zod schemas, we\n * can now validate.\n *\n * However, I don't want to break compatibility with existing clients\n * even if they are encoding invalid events. This surfaces a warning\n * to them in those situations.\n *\n * @author mikeryandev\n */\n let validatedEvent: AGUIEvent | BaseEvent;\n try {\n validatedEvent = EventSchemas.parse(event) as AGUIEvent;\n } catch (err) {\n console.warn(\n \"[ag-ui][proto.encode] Malformed devent detected, falling back to unvalidated event\",\n err,\n event,\n );\n validatedEvent = event;\n }\n const oneofField = toCamelCase(validatedEvent.type);\n const { type, timestamp, rawEvent, ...rest } = validatedEvent as AGUIEvent as Record<string, any>;\n\n // since protobuf does not support optional arrays, we need to ensure that the toolCalls array is always present\n if (type === EventType.MESSAGES_SNAPSHOT && Array.isArray(rest.messages)) {\n rest.messages = (rest.messages as Message[]).map((message) => {\n const untypedMessage = message as any;\n if (untypedMessage.toolCalls === undefined) {\n return { ...message, toolCalls: [] };\n }\n return message;\n });\n }\n\n // custom mapping for json patch operations\n if (type === EventType.STATE_DELTA && Array.isArray(rest.delta)) {\n rest.delta = (rest.delta as any[]).map((operation: any) => ({\n ...operation,\n op: protoPatch.JsonPatchOperationType[operation.op.toUpperCase()],\n }));\n }\n\n const eventMessage = {\n [oneofField]: {\n baseEvent: {\n type: protoEvents.EventType[event.type as keyof typeof protoEvents.EventType],\n timestamp,\n rawEvent,\n },\n ...rest,\n },\n };\n return protoEvents.Event.encode(eventMessage).finish();\n}\n\n/**\n * Decodes a protocol buffer binary format to an event message.\n * The format includes a 4-byte length prefix followed by the message.\n */\nexport function decode(data: Uint8Array): BaseEvent {\n const event = protoEvents.Event.decode(data);\n const decoded = Object.values(event).find((value) => value !== undefined);\n if (!decoded) {\n throw new Error(\"Invalid event\");\n }\n decoded.type = protoEvents.EventType[decoded.baseEvent.type];\n decoded.timestamp = decoded.baseEvent.timestamp;\n decoded.rawEvent = decoded.baseEvent.rawEvent;\n\n // we want tool calls to be optional, so we need to remove them if they are empty\n if (decoded.type === EventType.MESSAGES_SNAPSHOT) {\n for (const message of (decoded as any).messages as Message[]) {\n const untypedMessage = message as any;\n if (untypedMessage.toolCalls?.length === 0) {\n untypedMessage.toolCalls = undefined;\n }\n }\n }\n\n // custom mapping for json patch operations\n if (decoded.type === EventType.STATE_DELTA) {\n for (const operation of (decoded as any).delta) {\n operation.op = protoPatch.JsonPatchOperationType[operation.op].toLowerCase();\n Object.keys(operation).forEach((key) => {\n if (operation[key] === undefined) {\n delete operation[key];\n }\n });\n }\n }\n\n Object.keys(decoded).forEach((key) => {\n if (decoded[key] === undefined) {\n delete decoded[key];\n }\n });\n\n return EventSchemas.parse(decoded);\n}\n","export { encode, decode } from \"./proto\";\n\nexport const AGUI_MEDIA_TYPE = \"application/vnd.ag-ui.event+proto\";\n"],"mappings":"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"}