@codefionn/llmleaf-client 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1675 @@
1
+ // llmleaf client contract — the single source of truth for every official client
2
+ // library under clients/ (Kotlin Multiplatform, Go, Rust, TypeScript, Zig).
3
+ //
4
+ // SOUL.md: "Official consumer client libraries live in clients/ ... generated from a
5
+ // single Protocol Buffers schema ... the source of truth for the canonical
6
+ // request/response shapes the libraries expose ... on the wire the libraries still
7
+ // speak llmleaf's existing OpenAI/OpenRouter HTTP surface (P3)."
8
+ //
9
+ // THE WIRE IS JSON, NOT PROTOBUF-BINARY. These messages are the typed model each
10
+ // SDK exposes; every client's HTTP transport serialises them to / parses them from
11
+ // the OpenAI/OpenRouter-shaped JSON the core actually speaks. Two conventions make
12
+ // that mapping mechanical and identical in every language:
13
+ //
14
+ // 1. Field names are snake_case and already match the JSON keys on the wire.
15
+ // 2. Closed-set enums map to their wire token by LOWERCASING the enum value name:
16
+ // FinishReason.TOOL_CALLS <-> "tool_calls"
17
+ // Role.ASSISTANT <-> "assistant"
18
+ // BatchStatus.IN_PROGRESS <-> "in_progress"
19
+ // The `*_UNSPECIFIED` zero value means the field is absent on the wire.
20
+ //
21
+ // Free-form JSON (arbitrary tool parameters, response_format bodies, provider
22
+ // passthrough) is carried as a raw-JSON `string` rather than google.protobuf.Struct,
23
+ // so codegen needs no well-known-type support in any target language. The transport
24
+ // splices these strings into the request body verbatim (P7 — transparent passthrough).
25
+
26
+ // @generated by protoc-gen-es v2.12.0 with parameter "target=ts"
27
+ // @generated from file llmleaf/v1/llmleaf.proto (package llmleaf.v1, syntax proto3)
28
+ /* eslint-disable */
29
+
30
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
31
+ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
32
+ import type { Message } from "@bufbuild/protobuf";
33
+
34
+ /**
35
+ * Describes the file llmleaf/v1/llmleaf.proto.
36
+ */
37
+ export const file_llmleaf_v1_llmleaf: GenFile = /*@__PURE__*/
38
+ fileDesc("ChhsbG1sZWFmL3YxL2xsbWxlYWYucHJvdG8SCmxsbWxlYWYudjEicwoFVXNhZ2USFQoNcHJvbXB0X3Rva2VucxgBIAEoDRIZChFjb21wbGV0aW9uX3Rva2VucxgCIAEoDRIUCgx0b3RhbF90b2tlbnMYAyABKA0SFQoIY29zdF91c2QYBCABKAFIAIgBAUILCglfY29zdF91c2QiNQoNRXJyb3JSZXNwb25zZRIkCgVlcnJvchgBIAEoCzIVLmxsbWxlYWYudjEuRXJyb3JCb2R5IlQKCUVycm9yQm9keRIPCgdtZXNzYWdlGAEgASgJEhEKBHR5cGUYAiABKAlIAIgBARIRCgRjb2RlGAMgASgJSAGIAQFCBwoFX3R5cGVCBwoFX2NvZGUiagoLQ29udGVudFBhcnQSJAoEdGV4dBgBIAEoCzIULmxsbWxlYWYudjEuVGV4dFBhcnRIABItCglpbWFnZV91cmwYAiABKAsyGC5sbG1sZWFmLnYxLkltYWdlVXJsUGFydEgAQgYKBHBhcnQiGAoIVGV4dFBhcnQSDAoEdGV4dBgBIAEoCSI7CgxJbWFnZVVybFBhcnQSCwoDdXJsGAEgASgJEhMKBmRldGFpbBgCIAEoCUgAiAEBQgkKB19kZXRhaWwiNgoMQ29udGVudFBhcnRzEiYKBWl0ZW1zGAEgAygLMhcubGxtbGVhZi52MS5Db250ZW50UGFydCIvCgxGdW5jdGlvbkNhbGwSDAoEbmFtZRgBIAEoCRIRCglhcmd1bWVudHMYAiABKAkiUAoIVG9vbENhbGwSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRIqCghmdW5jdGlvbhgDIAEoCzIYLmxsbWxlYWYudjEuRnVuY3Rpb25DYWxsIlUKEUZ1bmN0aW9uQ2FsbERlbHRhEhEKBG5hbWUYASABKAlIAIgBARIWCglhcmd1bWVudHMYAiABKAlIAYgBAUIHCgVfbmFtZUIMCgpfYXJndW1lbnRzIpUBCg1Ub29sQ2FsbERlbHRhEg0KBWluZGV4GAEgASgNEg8KAmlkGAIgASgJSACIAQESEQoEdHlwZRgDIAEoCUgBiAEBEjQKCGZ1bmN0aW9uGAQgASgLMh0ubGxtbGVhZi52MS5GdW5jdGlvbkNhbGxEZWx0YUgCiAEBQgUKA19pZEIHCgVfdHlwZUILCglfZnVuY3Rpb24i5QEKC0NoYXRNZXNzYWdlEh4KBHJvbGUYASABKA4yEC5sbG1sZWFmLnYxLlJvbGUSDgoEdGV4dBgCIAEoCUgAEikKBXBhcnRzGAMgASgLMhgubGxtbGVhZi52MS5Db250ZW50UGFydHNIABIRCgRuYW1lGAQgASgJSAGIAQESKAoKdG9vbF9jYWxscxgFIAMoCzIULmxsbWxlYWYudjEuVG9vbENhbGwSGQoMdG9vbF9jYWxsX2lkGAYgASgJSAKIAQFCCQoHY29udGVudEIHCgVfbmFtZUIPCg1fdG9vbF9jYWxsX2lkIm0KC0Z1bmN0aW9uRGVmEgwKBG5hbWUYASABKAkSGAoLZGVzY3JpcHRpb24YAiABKAlIAIgBARIXCgpwYXJhbWV0ZXJzGAMgASgJSAGIAQFCDgoMX2Rlc2NyaXB0aW9uQg0KC19wYXJhbWV0ZXJzIkIKB1Rvb2xEZWYSDAoEdHlwZRgBIAEoCRIpCghmdW5jdGlvbhgCIAEoCzIXLmxsbWxlYWYudjEuRnVuY3Rpb25EZWYiVAoKVG9vbENob2ljZRIOCgRtb2RlGAEgASgJSAASLAoFbmFtZWQYAiABKAsyGy5sbG1sZWFmLnYxLk5hbWVkVG9vbENob2ljZUgAQggKBmNob2ljZSJLCg9OYW1lZFRvb2xDaG9pY2USDAoEdHlwZRgBIAEoCRIqCghmdW5jdGlvbhgCIAEoCzIYLmxsbWxlYWYudjEuRnVuY3Rpb25OYW1lIhwKDEZ1bmN0aW9uTmFtZRIMCgRuYW1lGAEgASgJIkgKDlJlc3BvbnNlRm9ybWF0EgwKBHR5cGUYASABKAkSGAoLanNvbl9zY2hlbWEYAiABKAlIAIgBAUIOCgxfanNvbl9zY2hlbWEixQUKC0NoYXRSZXF1ZXN0Eg0KBW1vZGVsGAEgASgJEikKCG1lc3NhZ2VzGAIgAygLMhcubGxtbGVhZi52MS5DaGF0TWVzc2FnZRITCgZzdHJlYW0YAyABKAhIAIgBARIYCgt0ZW1wZXJhdHVyZRgEIAEoAkgBiAEBEhIKBXRvcF9wGAUgASgCSAKIAQESFwoKbWF4X3Rva2VucxgGIAEoDUgDiAEBEiIKFW1heF9jb21wbGV0aW9uX3Rva2VucxgHIAEoDUgEiAEBEgwKBHN0b3AYCCADKAkSDgoBbhgJIAEoDUgFiAEBEhEKBHNlZWQYCiABKANIBogBARIeChFmcmVxdWVuY3lfcGVuYWx0eRgLIAEoAkgHiAEBEh0KEHByZXNlbmNlX3BlbmFsdHkYDCABKAJICIgBARIiCgV0b29scxgNIAMoCzITLmxsbWxlYWYudjEuVG9vbERlZhIwCgt0b29sX2Nob2ljZRgOIAEoCzIWLmxsbWxlYWYudjEuVG9vbENob2ljZUgJiAEBEjgKD3Jlc3BvbnNlX2Zvcm1hdBgPIAEoCzIaLmxsbWxlYWYudjEuUmVzcG9uc2VGb3JtYXRICogBARIdChByZWFzb25pbmdfZWZmb3J0GBAgASgJSAuIAQESEgoFZXh0cmEYESABKAlIDIgBAUIJCgdfc3RyZWFtQg4KDF90ZW1wZXJhdHVyZUIICgZfdG9wX3BCDQoLX21heF90b2tlbnNCGAoWX21heF9jb21wbGV0aW9uX3Rva2Vuc0IECgJfbkIHCgVfc2VlZEIUChJfZnJlcXVlbmN5X3BlbmFsdHlCEwoRX3ByZXNlbmNlX3BlbmFsdHlCDgoMX3Rvb2xfY2hvaWNlQhIKEF9yZXNwb25zZV9mb3JtYXRCEwoRX3JlYXNvbmluZ19lZmZvcnRCCAoGX2V4dHJhIokBCgZDaG9pY2USDQoFaW5kZXgYASABKA0SKAoHbWVzc2FnZRgCIAEoCzIXLmxsbWxlYWYudjEuQ2hhdE1lc3NhZ2USNAoNZmluaXNoX3JlYXNvbhgDIAEoDjIYLmxsbWxlYWYudjEuRmluaXNoUmVhc29uSACIAQFCEAoOX2ZpbmlzaF9yZWFzb24ikQEKDENoYXRSZXNwb25zZRIKCgJpZBgBIAEoCRIOCgZvYmplY3QYAiABKAkSDwoHY3JlYXRlZBgDIAEoAxINCgVtb2RlbBgEIAEoCRIjCgdjaG9pY2VzGAUgAygLMhIubGxtbGVhZi52MS5DaG9pY2USIAoFdXNhZ2UYBiABKAsyES5sbG1sZWFmLnYxLlVzYWdlIoYBCgVEZWx0YRIjCgRyb2xlGAEgASgOMhAubGxtbGVhZi52MS5Sb2xlSACIAQESFAoHY29udGVudBgCIAEoCUgBiAEBEi0KCnRvb2xfY2FsbHMYAyADKAsyGS5sbG1sZWFmLnYxLlRvb2xDYWxsRGVsdGFCBwoFX3JvbGVCCgoIX2NvbnRlbnQihgEKC0NodW5rQ2hvaWNlEg0KBWluZGV4GAEgASgNEiAKBWRlbHRhGAIgASgLMhEubGxtbGVhZi52MS5EZWx0YRI0Cg1maW5pc2hfcmVhc29uGAMgASgOMhgubGxtbGVhZi52MS5GaW5pc2hSZWFzb25IAIgBAUIQCg5fZmluaXNoX3JlYXNvbiKsAQoTQ2hhdENvbXBsZXRpb25DaHVuaxIKCgJpZBgBIAEoCRIOCgZvYmplY3QYAiABKAkSDwoHY3JlYXRlZBgDIAEoAxINCgVtb2RlbBgEIAEoCRIoCgdjaG9pY2VzGAUgAygLMhcubGxtbGVhZi52MS5DaHVua0Nob2ljZRIlCgV1c2FnZRgGIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2VIAIgBAUIICgZfdXNhZ2UiqAEKEEVtYmVkZGluZ1JlcXVlc3QSDQoFbW9kZWwYASABKAkSDQoFaW5wdXQYAiADKAkSFwoKZGltZW5zaW9ucxgDIAEoDUgAiAEBEhwKD2VuY29kaW5nX2Zvcm1hdBgEIAEoCUgBiAEBEhIKBWV4dHJhGAUgASgJSAKIAQFCDQoLX2RpbWVuc2lvbnNCEgoQX2VuY29kaW5nX2Zvcm1hdEIICgZfZXh0cmEiPQoJRW1iZWRkaW5nEg4KBm9iamVjdBgBIAEoCRINCgVpbmRleBgCIAEoDRIRCgllbWJlZGRpbmcYAyADKAIieQoRRW1iZWRkaW5nUmVzcG9uc2USDgoGb2JqZWN0GAEgASgJEiMKBGRhdGEYAiADKAsyFS5sbG1sZWFmLnYxLkVtYmVkZGluZxINCgVtb2RlbBgDIAEoCRIgCgV1c2FnZRgEIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2UiqgEKDVNwZWVjaFJlcXVlc3QSDQoFbW9kZWwYASABKAkSDQoFaW5wdXQYAiABKAkSDQoFdm9pY2UYAyABKAkSHAoPcmVzcG9uc2VfZm9ybWF0GAQgASgJSACIAQESEgoFc3BlZWQYBSABKAJIAYgBARISCgVleHRyYRgGIAEoCUgCiAEBQhIKEF9yZXNwb25zZV9mb3JtYXRCCAoGX3NwZWVkQggKBl9leHRyYSJCCgVWb2ljZRIKCgJpZBgBIAEoCRIRCgRuYW1lGAIgASgJSACIAQESEQoJbGFuZ3VhZ2VzGAMgAygJQgcKBV9uYW1lIkIKDlZvaWNlc1Jlc3BvbnNlEg0KBW1vZGVsGAEgASgJEiEKBnZvaWNlcxgCIAMoCzIRLmxsbWxlYWYudjEuVm9pY2UixQEKFFRyYW5zY3JpcHRpb25SZXF1ZXN0Eg0KBW1vZGVsGAEgASgJEhUKCGxhbmd1YWdlGAIgASgJSACIAQESEwoGcHJvbXB0GAMgASgJSAGIAQESHAoPcmVzcG9uc2VfZm9ybWF0GAQgASgJSAKIAQESGAoLdGVtcGVyYXR1cmUYBSABKAJIA4gBAUILCglfbGFuZ3VhZ2VCCQoHX3Byb21wdEISChBfcmVzcG9uc2VfZm9ybWF0Qg4KDF90ZW1wZXJhdHVyZSK6AQoVVHJhbnNjcmlwdGlvblJlc3BvbnNlEgwKBHRleHQYASABKAkSEQoEdGFzaxgCIAEoCUgAiAEBEhUKCGxhbmd1YWdlGAMgASgJSAGIAQESFQoIZHVyYXRpb24YBCABKAJIAogBARIlCgV1c2FnZRgFIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2VIA4gBAUIHCgVfdGFza0ILCglfbGFuZ3VhZ2VCCwoJX2R1cmF0aW9uQggKBl91c2FnZSKoAQoMQXJjaGl0ZWN0dXJlEhgKEGlucHV0X21vZGFsaXRpZXMYASADKAkSGQoRb3V0cHV0X21vZGFsaXRpZXMYAiADKAkSFQoIbW9kYWxpdHkYAyABKAlIAIgBARIRCgl0b2tlbml6ZXIYBCABKAkSGgoNaW5zdHJ1Y3RfdHlwZRgFIAEoCUgBiAEBQgsKCV9tb2RhbGl0eUIQCg5faW5zdHJ1Y3RfdHlwZSItCgdQcmljaW5nEg4KBnByb21wdBgBIAEoCRISCgpjb21wbGV0aW9uGAIgASgJIssBCgtUb3BQcm92aWRlchIbCg5jb250ZXh0X2xlbmd0aBgBIAEoDUgAiAEBEiIKFW1heF9jb21wbGV0aW9uX3Rva2VucxgCIAEoDUgBiAEBEhQKDGlzX21vZGVyYXRlZBgDIAEoCBIgChNtYXhfdGhpbmtpbmdfdG9rZW5zGAQgASgNSAKIAQFCEQoPX2NvbnRleHRfbGVuZ3RoQhgKFl9tYXhfY29tcGxldGlvbl90b2tlbnNCFgoUX21heF90aGlua2luZ190b2tlbnMiTgoNTW9kZWxFbmRwb2ludBIQCghwcm92aWRlchgBIAEoCRINCgVtb2RlbBgCIAEoCRIMCgRkb3duGAMgASgIEg4KBnNvdXJjZRgEIAEoCSLOAwoKTW9kZWxFbnRyeRIKCgJpZBgBIAEoCRIWCg5jYW5vbmljYWxfc2x1ZxgCIAEoCRIMCgRuYW1lGAMgASgJEg8KB2NyZWF0ZWQYBCABKAMSEwoLZGVzY3JpcHRpb24YBSABKAkSGwoOY29udGV4dF9sZW5ndGgYBiABKA1IAIgBARIuCgxhcmNoaXRlY3R1cmUYByABKAsyGC5sbG1sZWFmLnYxLkFyY2hpdGVjdHVyZRIpCgdwcmljaW5nGAggASgLMhMubGxtbGVhZi52MS5QcmljaW5nSAGIAQESLQoMdG9wX3Byb3ZpZGVyGAkgASgLMhcubGxtbGVhZi52MS5Ub3BQcm92aWRlchIcChRzdXBwb3J0ZWRfcGFyYW1ldGVycxgKIAMoCRIeChZ1bnN1cHBvcnRlZF9wYXJhbWV0ZXJzGAsgAygJEh8KEmRlZmF1bHRfcGFyYW1ldGVycxgMIAEoCUgCiAEBEiwKCWVuZHBvaW50cxgNIAMoCzIZLmxsbWxlYWYudjEuTW9kZWxFbmRwb2ludEIRCg9fY29udGV4dF9sZW5ndGhCCgoIX3ByaWNpbmdCFQoTX2RlZmF1bHRfcGFyYW1ldGVycyI6ChJMaXN0TW9kZWxzUmVzcG9uc2USJAoEZGF0YRgBIAMoCzIWLmxsbWxlYWYudjEuTW9kZWxFbnRyeSJMChBCYXRjaFJlcXVlc3RJdGVtEhEKCWN1c3RvbV9pZBgBIAEoCRIlCgRib2R5GAIgASgLMhcubGxtbGVhZi52MS5DaGF0UmVxdWVzdCJEChJCYXRjaENyZWF0ZVJlcXVlc3QSLgoIcmVxdWVzdHMYASADKAsyHC5sbG1sZWFmLnYxLkJhdGNoUmVxdWVzdEl0ZW0idwoLQmF0Y2hDb3VudHMSDQoFdG90YWwYASABKAQSEgoKcHJvY2Vzc2luZxgCIAEoBBIRCglzdWNjZWVkZWQYAyABKAQSDwoHZXJyb3JlZBgEIAEoBBIQCghjYW5jZWxlZBgFIAEoBBIPCgdleHBpcmVkGAYgASgEIoMCCgtCYXRjaEhhbmRsZRIKCgJpZBgBIAEoCRInCgZzdGF0dXMYAiABKA4yFy5sbG1sZWFmLnYxLkJhdGNoU3RhdHVzEicKBmNvdW50cxgDIAEoCzIXLmxsbWxlYWYudjEuQmF0Y2hDb3VudHMSFwoKY3JlYXRlZF9hdBgEIAEoA0gAiAEBEhcKCmV4cGlyZXNfYXQYBSABKANIAYgBARIVCghlbmRlZF9hdBgGIAEoA0gCiAEBEhUKCGVuZHBvaW50GAcgASgJSAOIAQFCDQoLX2NyZWF0ZWRfYXRCDQoLX2V4cGlyZXNfYXRCCwoJX2VuZGVkX2F0QgsKCV9lbmRwb2ludCKZAQoPQmF0Y2hSZXN1bHRMaW5lEhEKCWN1c3RvbV9pZBgBIAEoCRIwCghyZXNwb25zZRgCIAEoCzIZLmxsbWxlYWYudjEuQmF0Y2hSZXNwb25zZUgAiAEBEioKBWVycm9yGAMgASgLMhYubGxtbGVhZi52MS5CYXRjaEVycm9ySAGIAQFCCwoJX3Jlc3BvbnNlQggKBl9lcnJvciJMCg1CYXRjaFJlc3BvbnNlEhMKC3N0YXR1c19jb2RlGAEgASgNEiYKBGJvZHkYAiABKAsyGC5sbG1sZWFmLnYxLkNoYXRSZXNwb25zZSIrCgpCYXRjaEVycm9yEgwKBGNvZGUYASABKAkSDwoHbWVzc2FnZRgCIAEoCSpLCgRSb2xlEhQKEFJPTEVfVU5TUEVDSUZJRUQQABIKCgZTWVNURU0QARIICgRVU0VSEAISDQoJQVNTSVNUQU5UEAMSCAoEVE9PTBAEKmcKDEZpbmlzaFJlYXNvbhIdChlGSU5JU0hfUkVBU09OX1VOU1BFQ0lGSUVEEAASCAoEU1RPUBABEgoKBkxFTkdUSBACEg4KClRPT0xfQ0FMTFMQAxISCg5DT05URU5UX0ZJTFRFUhAEKqEBCgtCYXRjaFN0YXR1cxIcChhCQVRDSF9TVEFUVVNfVU5TUEVDSUZJRUQQABIOCgpWQUxJREFUSU5HEAESDwoLSU5fUFJPR1JFU1MQAhIOCgpGSU5BTElaSU5HEAMSDQoJQ09NUExFVEVEEAQSCgoGRkFJTEVEEAUSCwoHRVhQSVJFRBAGEg0KCUNBTkNFTElORxAHEgwKCENBTkNFTEVEEAhCWAoXZXUuY29kZWZpb25uLmxsbWxlYWYudjFQAVo7Z2l0aHViLmNvbS9jb2RlZmlvbm4vbGxtbGVhZi9jbGllbnRzL2dvL2xsbWxlYWZwYjtsbG1sZWFmcGJiBnByb3RvMw");
39
+
40
+ /**
41
+ * Token accounting echoed on every response. `cost_usd` is an llmleaf addition
42
+ * (real-time price from the bundled pricing dataset); it is null/absent when the
43
+ * model has no known price.
44
+ *
45
+ * @generated from message llmleaf.v1.Usage
46
+ */
47
+ export type Usage = Message<"llmleaf.v1.Usage"> & {
48
+ /**
49
+ * @generated from field: uint32 prompt_tokens = 1;
50
+ */
51
+ promptTokens: number;
52
+
53
+ /**
54
+ * @generated from field: uint32 completion_tokens = 2;
55
+ */
56
+ completionTokens: number;
57
+
58
+ /**
59
+ * @generated from field: uint32 total_tokens = 3;
60
+ */
61
+ totalTokens: number;
62
+
63
+ /**
64
+ * @generated from field: optional double cost_usd = 4;
65
+ */
66
+ costUsd?: number | undefined;
67
+ };
68
+
69
+ /**
70
+ * Describes the message llmleaf.v1.Usage.
71
+ * Use `create(UsageSchema)` to create a new message.
72
+ */
73
+ export const UsageSchema: GenMessage<Usage> = /*@__PURE__*/
74
+ messageDesc(file_llmleaf_v1_llmleaf, 0);
75
+
76
+ /**
77
+ * The canonical error envelope returned by every endpoint: {"error":{"message":...}}.
78
+ *
79
+ * @generated from message llmleaf.v1.ErrorResponse
80
+ */
81
+ export type ErrorResponse = Message<"llmleaf.v1.ErrorResponse"> & {
82
+ /**
83
+ * @generated from field: llmleaf.v1.ErrorBody error = 1;
84
+ */
85
+ error?: ErrorBody | undefined;
86
+ };
87
+
88
+ /**
89
+ * Describes the message llmleaf.v1.ErrorResponse.
90
+ * Use `create(ErrorResponseSchema)` to create a new message.
91
+ */
92
+ export const ErrorResponseSchema: GenMessage<ErrorResponse> = /*@__PURE__*/
93
+ messageDesc(file_llmleaf_v1_llmleaf, 1);
94
+
95
+ /**
96
+ * @generated from message llmleaf.v1.ErrorBody
97
+ */
98
+ export type ErrorBody = Message<"llmleaf.v1.ErrorBody"> & {
99
+ /**
100
+ * @generated from field: string message = 1;
101
+ */
102
+ message: string;
103
+
104
+ /**
105
+ * Present on some dialects; absent on the llmleaf core envelope.
106
+ *
107
+ * @generated from field: optional string type = 2;
108
+ */
109
+ type?: string | undefined;
110
+
111
+ /**
112
+ * @generated from field: optional string code = 3;
113
+ */
114
+ code?: string | undefined;
115
+ };
116
+
117
+ /**
118
+ * Describes the message llmleaf.v1.ErrorBody.
119
+ * Use `create(ErrorBodySchema)` to create a new message.
120
+ */
121
+ export const ErrorBodySchema: GenMessage<ErrorBody> = /*@__PURE__*/
122
+ messageDesc(file_llmleaf_v1_llmleaf, 2);
123
+
124
+ /**
125
+ * A single content part for multimodal messages:
126
+ * {"type":"text","text":"..."}
127
+ * {"type":"image_url","image_url":{"url":"...","detail":"auto"}}
128
+ *
129
+ * @generated from message llmleaf.v1.ContentPart
130
+ */
131
+ export type ContentPart = Message<"llmleaf.v1.ContentPart"> & {
132
+ /**
133
+ * @generated from oneof llmleaf.v1.ContentPart.part
134
+ */
135
+ part: {
136
+ /**
137
+ * @generated from field: llmleaf.v1.TextPart text = 1;
138
+ */
139
+ value: TextPart;
140
+ case: "text";
141
+ } | {
142
+ /**
143
+ * @generated from field: llmleaf.v1.ImageUrlPart image_url = 2;
144
+ */
145
+ value: ImageUrlPart;
146
+ case: "imageUrl";
147
+ } | { case: undefined; value?: undefined };
148
+ };
149
+
150
+ /**
151
+ * Describes the message llmleaf.v1.ContentPart.
152
+ * Use `create(ContentPartSchema)` to create a new message.
153
+ */
154
+ export const ContentPartSchema: GenMessage<ContentPart> = /*@__PURE__*/
155
+ messageDesc(file_llmleaf_v1_llmleaf, 3);
156
+
157
+ /**
158
+ * @generated from message llmleaf.v1.TextPart
159
+ */
160
+ export type TextPart = Message<"llmleaf.v1.TextPart"> & {
161
+ /**
162
+ * @generated from field: string text = 1;
163
+ */
164
+ text: string;
165
+ };
166
+
167
+ /**
168
+ * Describes the message llmleaf.v1.TextPart.
169
+ * Use `create(TextPartSchema)` to create a new message.
170
+ */
171
+ export const TextPartSchema: GenMessage<TextPart> = /*@__PURE__*/
172
+ messageDesc(file_llmleaf_v1_llmleaf, 4);
173
+
174
+ /**
175
+ * @generated from message llmleaf.v1.ImageUrlPart
176
+ */
177
+ export type ImageUrlPart = Message<"llmleaf.v1.ImageUrlPart"> & {
178
+ /**
179
+ * @generated from field: string url = 1;
180
+ */
181
+ url: string;
182
+
183
+ /**
184
+ * "auto" | "low" | "high"
185
+ *
186
+ * @generated from field: optional string detail = 2;
187
+ */
188
+ detail?: string | undefined;
189
+ };
190
+
191
+ /**
192
+ * Describes the message llmleaf.v1.ImageUrlPart.
193
+ * Use `create(ImageUrlPartSchema)` to create a new message.
194
+ */
195
+ export const ImageUrlPartSchema: GenMessage<ImageUrlPart> = /*@__PURE__*/
196
+ messageDesc(file_llmleaf_v1_llmleaf, 5);
197
+
198
+ /**
199
+ * @generated from message llmleaf.v1.ContentParts
200
+ */
201
+ export type ContentParts = Message<"llmleaf.v1.ContentParts"> & {
202
+ /**
203
+ * @generated from field: repeated llmleaf.v1.ContentPart items = 1;
204
+ */
205
+ items: ContentPart[];
206
+ };
207
+
208
+ /**
209
+ * Describes the message llmleaf.v1.ContentParts.
210
+ * Use `create(ContentPartsSchema)` to create a new message.
211
+ */
212
+ export const ContentPartsSchema: GenMessage<ContentParts> = /*@__PURE__*/
213
+ messageDesc(file_llmleaf_v1_llmleaf, 6);
214
+
215
+ /**
216
+ * A function the model called. `arguments` is a JSON-encoded string (OpenAI shape).
217
+ *
218
+ * @generated from message llmleaf.v1.FunctionCall
219
+ */
220
+ export type FunctionCall = Message<"llmleaf.v1.FunctionCall"> & {
221
+ /**
222
+ * @generated from field: string name = 1;
223
+ */
224
+ name: string;
225
+
226
+ /**
227
+ * @generated from field: string arguments = 2;
228
+ */
229
+ arguments: string;
230
+ };
231
+
232
+ /**
233
+ * Describes the message llmleaf.v1.FunctionCall.
234
+ * Use `create(FunctionCallSchema)` to create a new message.
235
+ */
236
+ export const FunctionCallSchema: GenMessage<FunctionCall> = /*@__PURE__*/
237
+ messageDesc(file_llmleaf_v1_llmleaf, 7);
238
+
239
+ /**
240
+ * @generated from message llmleaf.v1.ToolCall
241
+ */
242
+ export type ToolCall = Message<"llmleaf.v1.ToolCall"> & {
243
+ /**
244
+ * @generated from field: string id = 1;
245
+ */
246
+ id: string;
247
+
248
+ /**
249
+ * always "function" today
250
+ *
251
+ * @generated from field: string type = 2;
252
+ */
253
+ type: string;
254
+
255
+ /**
256
+ * @generated from field: llmleaf.v1.FunctionCall function = 3;
257
+ */
258
+ function?: FunctionCall | undefined;
259
+ };
260
+
261
+ /**
262
+ * Describes the message llmleaf.v1.ToolCall.
263
+ * Use `create(ToolCallSchema)` to create a new message.
264
+ */
265
+ export const ToolCallSchema: GenMessage<ToolCall> = /*@__PURE__*/
266
+ messageDesc(file_llmleaf_v1_llmleaf, 8);
267
+
268
+ /**
269
+ * Incremental tool-call fragment on a streaming delta; fields arrive piecemeal.
270
+ *
271
+ * @generated from message llmleaf.v1.FunctionCallDelta
272
+ */
273
+ export type FunctionCallDelta = Message<"llmleaf.v1.FunctionCallDelta"> & {
274
+ /**
275
+ * @generated from field: optional string name = 1;
276
+ */
277
+ name?: string | undefined;
278
+
279
+ /**
280
+ * @generated from field: optional string arguments = 2;
281
+ */
282
+ arguments?: string | undefined;
283
+ };
284
+
285
+ /**
286
+ * Describes the message llmleaf.v1.FunctionCallDelta.
287
+ * Use `create(FunctionCallDeltaSchema)` to create a new message.
288
+ */
289
+ export const FunctionCallDeltaSchema: GenMessage<FunctionCallDelta> = /*@__PURE__*/
290
+ messageDesc(file_llmleaf_v1_llmleaf, 9);
291
+
292
+ /**
293
+ * @generated from message llmleaf.v1.ToolCallDelta
294
+ */
295
+ export type ToolCallDelta = Message<"llmleaf.v1.ToolCallDelta"> & {
296
+ /**
297
+ * @generated from field: uint32 index = 1;
298
+ */
299
+ index: number;
300
+
301
+ /**
302
+ * @generated from field: optional string id = 2;
303
+ */
304
+ id?: string | undefined;
305
+
306
+ /**
307
+ * @generated from field: optional string type = 3;
308
+ */
309
+ type?: string | undefined;
310
+
311
+ /**
312
+ * @generated from field: optional llmleaf.v1.FunctionCallDelta function = 4;
313
+ */
314
+ function?: FunctionCallDelta | undefined;
315
+ };
316
+
317
+ /**
318
+ * Describes the message llmleaf.v1.ToolCallDelta.
319
+ * Use `create(ToolCallDeltaSchema)` to create a new message.
320
+ */
321
+ export const ToolCallDeltaSchema: GenMessage<ToolCallDelta> = /*@__PURE__*/
322
+ messageDesc(file_llmleaf_v1_llmleaf, 10);
323
+
324
+ /**
325
+ * @generated from message llmleaf.v1.ChatMessage
326
+ */
327
+ export type ChatMessage = Message<"llmleaf.v1.ChatMessage"> & {
328
+ /**
329
+ * @generated from field: llmleaf.v1.Role role = 1;
330
+ */
331
+ role: Role;
332
+
333
+ /**
334
+ * Wire `content` is either a plain string or an array of content parts.
335
+ *
336
+ * @generated from oneof llmleaf.v1.ChatMessage.content
337
+ */
338
+ content: {
339
+ /**
340
+ * @generated from field: string text = 2;
341
+ */
342
+ value: string;
343
+ case: "text";
344
+ } | {
345
+ /**
346
+ * @generated from field: llmleaf.v1.ContentParts parts = 3;
347
+ */
348
+ value: ContentParts;
349
+ case: "parts";
350
+ } | { case: undefined; value?: undefined };
351
+
352
+ /**
353
+ * @generated from field: optional string name = 4;
354
+ */
355
+ name?: string | undefined;
356
+
357
+ /**
358
+ * @generated from field: repeated llmleaf.v1.ToolCall tool_calls = 5;
359
+ */
360
+ toolCalls: ToolCall[];
361
+
362
+ /**
363
+ * set when role == TOOL
364
+ *
365
+ * @generated from field: optional string tool_call_id = 6;
366
+ */
367
+ toolCallId?: string | undefined;
368
+ };
369
+
370
+ /**
371
+ * Describes the message llmleaf.v1.ChatMessage.
372
+ * Use `create(ChatMessageSchema)` to create a new message.
373
+ */
374
+ export const ChatMessageSchema: GenMessage<ChatMessage> = /*@__PURE__*/
375
+ messageDesc(file_llmleaf_v1_llmleaf, 11);
376
+
377
+ /**
378
+ * A function the model MAY call. `parameters` is a raw JSON Schema string.
379
+ *
380
+ * @generated from message llmleaf.v1.FunctionDef
381
+ */
382
+ export type FunctionDef = Message<"llmleaf.v1.FunctionDef"> & {
383
+ /**
384
+ * @generated from field: string name = 1;
385
+ */
386
+ name: string;
387
+
388
+ /**
389
+ * @generated from field: optional string description = 2;
390
+ */
391
+ description?: string | undefined;
392
+
393
+ /**
394
+ * raw JSON object
395
+ *
396
+ * @generated from field: optional string parameters = 3;
397
+ */
398
+ parameters?: string | undefined;
399
+ };
400
+
401
+ /**
402
+ * Describes the message llmleaf.v1.FunctionDef.
403
+ * Use `create(FunctionDefSchema)` to create a new message.
404
+ */
405
+ export const FunctionDefSchema: GenMessage<FunctionDef> = /*@__PURE__*/
406
+ messageDesc(file_llmleaf_v1_llmleaf, 12);
407
+
408
+ /**
409
+ * @generated from message llmleaf.v1.ToolDef
410
+ */
411
+ export type ToolDef = Message<"llmleaf.v1.ToolDef"> & {
412
+ /**
413
+ * "function"
414
+ *
415
+ * @generated from field: string type = 1;
416
+ */
417
+ type: string;
418
+
419
+ /**
420
+ * @generated from field: llmleaf.v1.FunctionDef function = 2;
421
+ */
422
+ function?: FunctionDef | undefined;
423
+ };
424
+
425
+ /**
426
+ * Describes the message llmleaf.v1.ToolDef.
427
+ * Use `create(ToolDefSchema)` to create a new message.
428
+ */
429
+ export const ToolDefSchema: GenMessage<ToolDef> = /*@__PURE__*/
430
+ messageDesc(file_llmleaf_v1_llmleaf, 13);
431
+
432
+ /**
433
+ * tool_choice is either a mode string ("auto"|"none"|"required") or an object
434
+ * pinning a specific function: {"type":"function","function":{"name":"..."}}.
435
+ *
436
+ * @generated from message llmleaf.v1.ToolChoice
437
+ */
438
+ export type ToolChoice = Message<"llmleaf.v1.ToolChoice"> & {
439
+ /**
440
+ * @generated from oneof llmleaf.v1.ToolChoice.choice
441
+ */
442
+ choice: {
443
+ /**
444
+ * @generated from field: string mode = 1;
445
+ */
446
+ value: string;
447
+ case: "mode";
448
+ } | {
449
+ /**
450
+ * @generated from field: llmleaf.v1.NamedToolChoice named = 2;
451
+ */
452
+ value: NamedToolChoice;
453
+ case: "named";
454
+ } | { case: undefined; value?: undefined };
455
+ };
456
+
457
+ /**
458
+ * Describes the message llmleaf.v1.ToolChoice.
459
+ * Use `create(ToolChoiceSchema)` to create a new message.
460
+ */
461
+ export const ToolChoiceSchema: GenMessage<ToolChoice> = /*@__PURE__*/
462
+ messageDesc(file_llmleaf_v1_llmleaf, 14);
463
+
464
+ /**
465
+ * @generated from message llmleaf.v1.NamedToolChoice
466
+ */
467
+ export type NamedToolChoice = Message<"llmleaf.v1.NamedToolChoice"> & {
468
+ /**
469
+ * "function"
470
+ *
471
+ * @generated from field: string type = 1;
472
+ */
473
+ type: string;
474
+
475
+ /**
476
+ * @generated from field: llmleaf.v1.FunctionName function = 2;
477
+ */
478
+ function?: FunctionName | undefined;
479
+ };
480
+
481
+ /**
482
+ * Describes the message llmleaf.v1.NamedToolChoice.
483
+ * Use `create(NamedToolChoiceSchema)` to create a new message.
484
+ */
485
+ export const NamedToolChoiceSchema: GenMessage<NamedToolChoice> = /*@__PURE__*/
486
+ messageDesc(file_llmleaf_v1_llmleaf, 15);
487
+
488
+ /**
489
+ * @generated from message llmleaf.v1.FunctionName
490
+ */
491
+ export type FunctionName = Message<"llmleaf.v1.FunctionName"> & {
492
+ /**
493
+ * @generated from field: string name = 1;
494
+ */
495
+ name: string;
496
+ };
497
+
498
+ /**
499
+ * Describes the message llmleaf.v1.FunctionName.
500
+ * Use `create(FunctionNameSchema)` to create a new message.
501
+ */
502
+ export const FunctionNameSchema: GenMessage<FunctionName> = /*@__PURE__*/
503
+ messageDesc(file_llmleaf_v1_llmleaf, 16);
504
+
505
+ /**
506
+ * response_format: {"type":"text"|"json_object"|"json_schema", "json_schema": {...}}
507
+ *
508
+ * @generated from message llmleaf.v1.ResponseFormat
509
+ */
510
+ export type ResponseFormat = Message<"llmleaf.v1.ResponseFormat"> & {
511
+ /**
512
+ * @generated from field: string type = 1;
513
+ */
514
+ type: string;
515
+
516
+ /**
517
+ * raw JSON object when type == "json_schema"
518
+ *
519
+ * @generated from field: optional string json_schema = 2;
520
+ */
521
+ jsonSchema?: string | undefined;
522
+ };
523
+
524
+ /**
525
+ * Describes the message llmleaf.v1.ResponseFormat.
526
+ * Use `create(ResponseFormatSchema)` to create a new message.
527
+ */
528
+ export const ResponseFormatSchema: GenMessage<ResponseFormat> = /*@__PURE__*/
529
+ messageDesc(file_llmleaf_v1_llmleaf, 17);
530
+
531
+ /**
532
+ * @generated from message llmleaf.v1.ChatRequest
533
+ */
534
+ export type ChatRequest = Message<"llmleaf.v1.ChatRequest"> & {
535
+ /**
536
+ * @generated from field: string model = 1;
537
+ */
538
+ model: string;
539
+
540
+ /**
541
+ * @generated from field: repeated llmleaf.v1.ChatMessage messages = 2;
542
+ */
543
+ messages: ChatMessage[];
544
+
545
+ /**
546
+ * @generated from field: optional bool stream = 3;
547
+ */
548
+ stream?: boolean | undefined;
549
+
550
+ /**
551
+ * @generated from field: optional float temperature = 4;
552
+ */
553
+ temperature?: number | undefined;
554
+
555
+ /**
556
+ * @generated from field: optional float top_p = 5;
557
+ */
558
+ topP?: number | undefined;
559
+
560
+ /**
561
+ * legacy name
562
+ *
563
+ * @generated from field: optional uint32 max_tokens = 6;
564
+ */
565
+ maxTokens?: number | undefined;
566
+
567
+ /**
568
+ * modern name (takes precedence)
569
+ *
570
+ * @generated from field: optional uint32 max_completion_tokens = 7;
571
+ */
572
+ maxCompletionTokens?: number | undefined;
573
+
574
+ /**
575
+ * wire accepts string or array
576
+ *
577
+ * @generated from field: repeated string stop = 8;
578
+ */
579
+ stop: string[];
580
+
581
+ /**
582
+ * @generated from field: optional uint32 n = 9;
583
+ */
584
+ n?: number | undefined;
585
+
586
+ /**
587
+ * @generated from field: optional int64 seed = 10;
588
+ */
589
+ seed?: bigint | undefined;
590
+
591
+ /**
592
+ * @generated from field: optional float frequency_penalty = 11;
593
+ */
594
+ frequencyPenalty?: number | undefined;
595
+
596
+ /**
597
+ * @generated from field: optional float presence_penalty = 12;
598
+ */
599
+ presencePenalty?: number | undefined;
600
+
601
+ /**
602
+ * @generated from field: repeated llmleaf.v1.ToolDef tools = 13;
603
+ */
604
+ tools: ToolDef[];
605
+
606
+ /**
607
+ * @generated from field: optional llmleaf.v1.ToolChoice tool_choice = 14;
608
+ */
609
+ toolChoice?: ToolChoice | undefined;
610
+
611
+ /**
612
+ * @generated from field: optional llmleaf.v1.ResponseFormat response_format = 15;
613
+ */
614
+ responseFormat?: ResponseFormat | undefined;
615
+
616
+ /**
617
+ * "low" | "medium" | "high"
618
+ *
619
+ * @generated from field: optional string reasoning_effort = 16;
620
+ */
621
+ reasoningEffort?: string | undefined;
622
+
623
+ /**
624
+ * Dialect-specific passthrough, spliced verbatim into the request body (P7).
625
+ *
626
+ * raw JSON object
627
+ *
628
+ * @generated from field: optional string extra = 17;
629
+ */
630
+ extra?: string | undefined;
631
+ };
632
+
633
+ /**
634
+ * Describes the message llmleaf.v1.ChatRequest.
635
+ * Use `create(ChatRequestSchema)` to create a new message.
636
+ */
637
+ export const ChatRequestSchema: GenMessage<ChatRequest> = /*@__PURE__*/
638
+ messageDesc(file_llmleaf_v1_llmleaf, 18);
639
+
640
+ /**
641
+ * @generated from message llmleaf.v1.Choice
642
+ */
643
+ export type Choice = Message<"llmleaf.v1.Choice"> & {
644
+ /**
645
+ * @generated from field: uint32 index = 1;
646
+ */
647
+ index: number;
648
+
649
+ /**
650
+ * @generated from field: llmleaf.v1.ChatMessage message = 2;
651
+ */
652
+ message?: ChatMessage | undefined;
653
+
654
+ /**
655
+ * @generated from field: optional llmleaf.v1.FinishReason finish_reason = 3;
656
+ */
657
+ finishReason?: FinishReason | undefined;
658
+ };
659
+
660
+ /**
661
+ * Describes the message llmleaf.v1.Choice.
662
+ * Use `create(ChoiceSchema)` to create a new message.
663
+ */
664
+ export const ChoiceSchema: GenMessage<Choice> = /*@__PURE__*/
665
+ messageDesc(file_llmleaf_v1_llmleaf, 19);
666
+
667
+ /**
668
+ * @generated from message llmleaf.v1.ChatResponse
669
+ */
670
+ export type ChatResponse = Message<"llmleaf.v1.ChatResponse"> & {
671
+ /**
672
+ * @generated from field: string id = 1;
673
+ */
674
+ id: string;
675
+
676
+ /**
677
+ * "chat.completion"
678
+ *
679
+ * @generated from field: string object = 2;
680
+ */
681
+ object: string;
682
+
683
+ /**
684
+ * unix seconds
685
+ *
686
+ * @generated from field: int64 created = 3;
687
+ */
688
+ created: bigint;
689
+
690
+ /**
691
+ * @generated from field: string model = 4;
692
+ */
693
+ model: string;
694
+
695
+ /**
696
+ * @generated from field: repeated llmleaf.v1.Choice choices = 5;
697
+ */
698
+ choices: Choice[];
699
+
700
+ /**
701
+ * @generated from field: llmleaf.v1.Usage usage = 6;
702
+ */
703
+ usage?: Usage | undefined;
704
+ };
705
+
706
+ /**
707
+ * Describes the message llmleaf.v1.ChatResponse.
708
+ * Use `create(ChatResponseSchema)` to create a new message.
709
+ */
710
+ export const ChatResponseSchema: GenMessage<ChatResponse> = /*@__PURE__*/
711
+ messageDesc(file_llmleaf_v1_llmleaf, 20);
712
+
713
+ /**
714
+ * Streaming SSE frame: `data: <ChatCompletionChunk JSON>\n\n`, terminated by
715
+ * the sentinel line `data: [DONE]`.
716
+ *
717
+ * @generated from message llmleaf.v1.Delta
718
+ */
719
+ export type Delta = Message<"llmleaf.v1.Delta"> & {
720
+ /**
721
+ * first chunk only
722
+ *
723
+ * @generated from field: optional llmleaf.v1.Role role = 1;
724
+ */
725
+ role?: Role | undefined;
726
+
727
+ /**
728
+ * incremental text
729
+ *
730
+ * @generated from field: optional string content = 2;
731
+ */
732
+ content?: string | undefined;
733
+
734
+ /**
735
+ * @generated from field: repeated llmleaf.v1.ToolCallDelta tool_calls = 3;
736
+ */
737
+ toolCalls: ToolCallDelta[];
738
+ };
739
+
740
+ /**
741
+ * Describes the message llmleaf.v1.Delta.
742
+ * Use `create(DeltaSchema)` to create a new message.
743
+ */
744
+ export const DeltaSchema: GenMessage<Delta> = /*@__PURE__*/
745
+ messageDesc(file_llmleaf_v1_llmleaf, 21);
746
+
747
+ /**
748
+ * @generated from message llmleaf.v1.ChunkChoice
749
+ */
750
+ export type ChunkChoice = Message<"llmleaf.v1.ChunkChoice"> & {
751
+ /**
752
+ * @generated from field: uint32 index = 1;
753
+ */
754
+ index: number;
755
+
756
+ /**
757
+ * @generated from field: llmleaf.v1.Delta delta = 2;
758
+ */
759
+ delta?: Delta | undefined;
760
+
761
+ /**
762
+ * @generated from field: optional llmleaf.v1.FinishReason finish_reason = 3;
763
+ */
764
+ finishReason?: FinishReason | undefined;
765
+ };
766
+
767
+ /**
768
+ * Describes the message llmleaf.v1.ChunkChoice.
769
+ * Use `create(ChunkChoiceSchema)` to create a new message.
770
+ */
771
+ export const ChunkChoiceSchema: GenMessage<ChunkChoice> = /*@__PURE__*/
772
+ messageDesc(file_llmleaf_v1_llmleaf, 22);
773
+
774
+ /**
775
+ * @generated from message llmleaf.v1.ChatCompletionChunk
776
+ */
777
+ export type ChatCompletionChunk = Message<"llmleaf.v1.ChatCompletionChunk"> & {
778
+ /**
779
+ * @generated from field: string id = 1;
780
+ */
781
+ id: string;
782
+
783
+ /**
784
+ * "chat.completion.chunk"
785
+ *
786
+ * @generated from field: string object = 2;
787
+ */
788
+ object: string;
789
+
790
+ /**
791
+ * @generated from field: int64 created = 3;
792
+ */
793
+ created: bigint;
794
+
795
+ /**
796
+ * @generated from field: string model = 4;
797
+ */
798
+ model: string;
799
+
800
+ /**
801
+ * @generated from field: repeated llmleaf.v1.ChunkChoice choices = 5;
802
+ */
803
+ choices: ChunkChoice[];
804
+
805
+ /**
806
+ * terminal chunk only
807
+ *
808
+ * @generated from field: optional llmleaf.v1.Usage usage = 6;
809
+ */
810
+ usage?: Usage | undefined;
811
+ };
812
+
813
+ /**
814
+ * Describes the message llmleaf.v1.ChatCompletionChunk.
815
+ * Use `create(ChatCompletionChunkSchema)` to create a new message.
816
+ */
817
+ export const ChatCompletionChunkSchema: GenMessage<ChatCompletionChunk> = /*@__PURE__*/
818
+ messageDesc(file_llmleaf_v1_llmleaf, 23);
819
+
820
+ /**
821
+ * @generated from message llmleaf.v1.EmbeddingRequest
822
+ */
823
+ export type EmbeddingRequest = Message<"llmleaf.v1.EmbeddingRequest"> & {
824
+ /**
825
+ * @generated from field: string model = 1;
826
+ */
827
+ model: string;
828
+
829
+ /**
830
+ * wire accepts string or array of strings
831
+ *
832
+ * @generated from field: repeated string input = 2;
833
+ */
834
+ input: string[];
835
+
836
+ /**
837
+ * @generated from field: optional uint32 dimensions = 3;
838
+ */
839
+ dimensions?: number | undefined;
840
+
841
+ /**
842
+ * "float" | "base64"
843
+ *
844
+ * @generated from field: optional string encoding_format = 4;
845
+ */
846
+ encodingFormat?: string | undefined;
847
+
848
+ /**
849
+ * raw JSON object passthrough
850
+ *
851
+ * @generated from field: optional string extra = 5;
852
+ */
853
+ extra?: string | undefined;
854
+ };
855
+
856
+ /**
857
+ * Describes the message llmleaf.v1.EmbeddingRequest.
858
+ * Use `create(EmbeddingRequestSchema)` to create a new message.
859
+ */
860
+ export const EmbeddingRequestSchema: GenMessage<EmbeddingRequest> = /*@__PURE__*/
861
+ messageDesc(file_llmleaf_v1_llmleaf, 24);
862
+
863
+ /**
864
+ * @generated from message llmleaf.v1.Embedding
865
+ */
866
+ export type Embedding = Message<"llmleaf.v1.Embedding"> & {
867
+ /**
868
+ * "embedding"
869
+ *
870
+ * @generated from field: string object = 1;
871
+ */
872
+ object: string;
873
+
874
+ /**
875
+ * @generated from field: uint32 index = 2;
876
+ */
877
+ index: number;
878
+
879
+ /**
880
+ * present when encoding_format == "float"
881
+ *
882
+ * @generated from field: repeated float embedding = 3;
883
+ */
884
+ embedding: number[];
885
+ };
886
+
887
+ /**
888
+ * Describes the message llmleaf.v1.Embedding.
889
+ * Use `create(EmbeddingSchema)` to create a new message.
890
+ */
891
+ export const EmbeddingSchema: GenMessage<Embedding> = /*@__PURE__*/
892
+ messageDesc(file_llmleaf_v1_llmleaf, 25);
893
+
894
+ /**
895
+ * @generated from message llmleaf.v1.EmbeddingResponse
896
+ */
897
+ export type EmbeddingResponse = Message<"llmleaf.v1.EmbeddingResponse"> & {
898
+ /**
899
+ * "list"
900
+ *
901
+ * @generated from field: string object = 1;
902
+ */
903
+ object: string;
904
+
905
+ /**
906
+ * @generated from field: repeated llmleaf.v1.Embedding data = 2;
907
+ */
908
+ data: Embedding[];
909
+
910
+ /**
911
+ * @generated from field: string model = 3;
912
+ */
913
+ model: string;
914
+
915
+ /**
916
+ * @generated from field: llmleaf.v1.Usage usage = 4;
917
+ */
918
+ usage?: Usage | undefined;
919
+ };
920
+
921
+ /**
922
+ * Describes the message llmleaf.v1.EmbeddingResponse.
923
+ * Use `create(EmbeddingResponseSchema)` to create a new message.
924
+ */
925
+ export const EmbeddingResponseSchema: GenMessage<EmbeddingResponse> = /*@__PURE__*/
926
+ messageDesc(file_llmleaf_v1_llmleaf, 26);
927
+
928
+ /**
929
+ * @generated from message llmleaf.v1.SpeechRequest
930
+ */
931
+ export type SpeechRequest = Message<"llmleaf.v1.SpeechRequest"> & {
932
+ /**
933
+ * @generated from field: string model = 1;
934
+ */
935
+ model: string;
936
+
937
+ /**
938
+ * @generated from field: string input = 2;
939
+ */
940
+ input: string;
941
+
942
+ /**
943
+ * @generated from field: string voice = 3;
944
+ */
945
+ voice: string;
946
+
947
+ /**
948
+ * mp3|opus|aac|flac|wav|pcm
949
+ *
950
+ * @generated from field: optional string response_format = 4;
951
+ */
952
+ responseFormat?: string | undefined;
953
+
954
+ /**
955
+ * @generated from field: optional float speed = 5;
956
+ */
957
+ speed?: number | undefined;
958
+
959
+ /**
960
+ * raw JSON object passthrough
961
+ *
962
+ * @generated from field: optional string extra = 6;
963
+ */
964
+ extra?: string | undefined;
965
+ };
966
+
967
+ /**
968
+ * Describes the message llmleaf.v1.SpeechRequest.
969
+ * Use `create(SpeechRequestSchema)` to create a new message.
970
+ */
971
+ export const SpeechRequestSchema: GenMessage<SpeechRequest> = /*@__PURE__*/
972
+ messageDesc(file_llmleaf_v1_llmleaf, 27);
973
+
974
+ /**
975
+ * @generated from message llmleaf.v1.Voice
976
+ */
977
+ export type Voice = Message<"llmleaf.v1.Voice"> & {
978
+ /**
979
+ * value to put in SpeechRequest.voice
980
+ *
981
+ * @generated from field: string id = 1;
982
+ */
983
+ id: string;
984
+
985
+ /**
986
+ * @generated from field: optional string name = 2;
987
+ */
988
+ name?: string | undefined;
989
+
990
+ /**
991
+ * BCP-47 tags
992
+ *
993
+ * @generated from field: repeated string languages = 3;
994
+ */
995
+ languages: string[];
996
+ };
997
+
998
+ /**
999
+ * Describes the message llmleaf.v1.Voice.
1000
+ * Use `create(VoiceSchema)` to create a new message.
1001
+ */
1002
+ export const VoiceSchema: GenMessage<Voice> = /*@__PURE__*/
1003
+ messageDesc(file_llmleaf_v1_llmleaf, 28);
1004
+
1005
+ /**
1006
+ * @generated from message llmleaf.v1.VoicesResponse
1007
+ */
1008
+ export type VoicesResponse = Message<"llmleaf.v1.VoicesResponse"> & {
1009
+ /**
1010
+ * @generated from field: string model = 1;
1011
+ */
1012
+ model: string;
1013
+
1014
+ /**
1015
+ * @generated from field: repeated llmleaf.v1.Voice voices = 2;
1016
+ */
1017
+ voices: Voice[];
1018
+ };
1019
+
1020
+ /**
1021
+ * Describes the message llmleaf.v1.VoicesResponse.
1022
+ * Use `create(VoicesResponseSchema)` to create a new message.
1023
+ */
1024
+ export const VoicesResponseSchema: GenMessage<VoicesResponse> = /*@__PURE__*/
1025
+ messageDesc(file_llmleaf_v1_llmleaf, 29);
1026
+
1027
+ /**
1028
+ * The audio file itself is sent as the multipart `file` part, NOT in this message;
1029
+ * these are the accompanying form fields.
1030
+ *
1031
+ * @generated from message llmleaf.v1.TranscriptionRequest
1032
+ */
1033
+ export type TranscriptionRequest = Message<"llmleaf.v1.TranscriptionRequest"> & {
1034
+ /**
1035
+ * @generated from field: string model = 1;
1036
+ */
1037
+ model: string;
1038
+
1039
+ /**
1040
+ * ISO-639-1 hint
1041
+ *
1042
+ * @generated from field: optional string language = 2;
1043
+ */
1044
+ language?: string | undefined;
1045
+
1046
+ /**
1047
+ * decoding bias
1048
+ *
1049
+ * @generated from field: optional string prompt = 3;
1050
+ */
1051
+ prompt?: string | undefined;
1052
+
1053
+ /**
1054
+ * json|text|verbose_json|srt|vtt
1055
+ *
1056
+ * @generated from field: optional string response_format = 4;
1057
+ */
1058
+ responseFormat?: string | undefined;
1059
+
1060
+ /**
1061
+ * @generated from field: optional float temperature = 5;
1062
+ */
1063
+ temperature?: number | undefined;
1064
+ };
1065
+
1066
+ /**
1067
+ * Describes the message llmleaf.v1.TranscriptionRequest.
1068
+ * Use `create(TranscriptionRequestSchema)` to create a new message.
1069
+ */
1070
+ export const TranscriptionRequestSchema: GenMessage<TranscriptionRequest> = /*@__PURE__*/
1071
+ messageDesc(file_llmleaf_v1_llmleaf, 30);
1072
+
1073
+ /**
1074
+ * For response_format json/verbose_json. text/srt/vtt return a plain-text body.
1075
+ *
1076
+ * @generated from message llmleaf.v1.TranscriptionResponse
1077
+ */
1078
+ export type TranscriptionResponse = Message<"llmleaf.v1.TranscriptionResponse"> & {
1079
+ /**
1080
+ * @generated from field: string text = 1;
1081
+ */
1082
+ text: string;
1083
+
1084
+ /**
1085
+ * "transcribe" (verbose_json)
1086
+ *
1087
+ * @generated from field: optional string task = 2;
1088
+ */
1089
+ task?: string | undefined;
1090
+
1091
+ /**
1092
+ * @generated from field: optional string language = 3;
1093
+ */
1094
+ language?: string | undefined;
1095
+
1096
+ /**
1097
+ * @generated from field: optional float duration = 4;
1098
+ */
1099
+ duration?: number | undefined;
1100
+
1101
+ /**
1102
+ * @generated from field: optional llmleaf.v1.Usage usage = 5;
1103
+ */
1104
+ usage?: Usage | undefined;
1105
+ };
1106
+
1107
+ /**
1108
+ * Describes the message llmleaf.v1.TranscriptionResponse.
1109
+ * Use `create(TranscriptionResponseSchema)` to create a new message.
1110
+ */
1111
+ export const TranscriptionResponseSchema: GenMessage<TranscriptionResponse> = /*@__PURE__*/
1112
+ messageDesc(file_llmleaf_v1_llmleaf, 31);
1113
+
1114
+ /**
1115
+ * @generated from message llmleaf.v1.Architecture
1116
+ */
1117
+ export type Architecture = Message<"llmleaf.v1.Architecture"> & {
1118
+ /**
1119
+ * @generated from field: repeated string input_modalities = 1;
1120
+ */
1121
+ inputModalities: string[];
1122
+
1123
+ /**
1124
+ * @generated from field: repeated string output_modalities = 2;
1125
+ */
1126
+ outputModalities: string[];
1127
+
1128
+ /**
1129
+ * "text->text" | "text->audio" | ...
1130
+ *
1131
+ * @generated from field: optional string modality = 3;
1132
+ */
1133
+ modality?: string | undefined;
1134
+
1135
+ /**
1136
+ * @generated from field: string tokenizer = 4;
1137
+ */
1138
+ tokenizer: string;
1139
+
1140
+ /**
1141
+ * @generated from field: optional string instruct_type = 5;
1142
+ */
1143
+ instructType?: string | undefined;
1144
+ };
1145
+
1146
+ /**
1147
+ * Describes the message llmleaf.v1.Architecture.
1148
+ * Use `create(ArchitectureSchema)` to create a new message.
1149
+ */
1150
+ export const ArchitectureSchema: GenMessage<Architecture> = /*@__PURE__*/
1151
+ messageDesc(file_llmleaf_v1_llmleaf, 32);
1152
+
1153
+ /**
1154
+ * @generated from message llmleaf.v1.Pricing
1155
+ */
1156
+ export type Pricing = Message<"llmleaf.v1.Pricing"> & {
1157
+ /**
1158
+ * USD per token, decimal string
1159
+ *
1160
+ * @generated from field: string prompt = 1;
1161
+ */
1162
+ prompt: string;
1163
+
1164
+ /**
1165
+ * @generated from field: string completion = 2;
1166
+ */
1167
+ completion: string;
1168
+ };
1169
+
1170
+ /**
1171
+ * Describes the message llmleaf.v1.Pricing.
1172
+ * Use `create(PricingSchema)` to create a new message.
1173
+ */
1174
+ export const PricingSchema: GenMessage<Pricing> = /*@__PURE__*/
1175
+ messageDesc(file_llmleaf_v1_llmleaf, 33);
1176
+
1177
+ /**
1178
+ * @generated from message llmleaf.v1.TopProvider
1179
+ */
1180
+ export type TopProvider = Message<"llmleaf.v1.TopProvider"> & {
1181
+ /**
1182
+ * @generated from field: optional uint32 context_length = 1;
1183
+ */
1184
+ contextLength?: number | undefined;
1185
+
1186
+ /**
1187
+ * @generated from field: optional uint32 max_completion_tokens = 2;
1188
+ */
1189
+ maxCompletionTokens?: number | undefined;
1190
+
1191
+ /**
1192
+ * @generated from field: bool is_moderated = 3;
1193
+ */
1194
+ isModerated: boolean;
1195
+
1196
+ /**
1197
+ * llmleaf extension
1198
+ *
1199
+ * @generated from field: optional uint32 max_thinking_tokens = 4;
1200
+ */
1201
+ maxThinkingTokens?: number | undefined;
1202
+ };
1203
+
1204
+ /**
1205
+ * Describes the message llmleaf.v1.TopProvider.
1206
+ * Use `create(TopProviderSchema)` to create a new message.
1207
+ */
1208
+ export const TopProviderSchema: GenMessage<TopProvider> = /*@__PURE__*/
1209
+ messageDesc(file_llmleaf_v1_llmleaf, 34);
1210
+
1211
+ /**
1212
+ * Admin-only fallback-chain entry (present only with a valid x-admin-token).
1213
+ *
1214
+ * @generated from message llmleaf.v1.ModelEndpoint
1215
+ */
1216
+ export type ModelEndpoint = Message<"llmleaf.v1.ModelEndpoint"> & {
1217
+ /**
1218
+ * @generated from field: string provider = 1;
1219
+ */
1220
+ provider: string;
1221
+
1222
+ /**
1223
+ * @generated from field: string model = 2;
1224
+ */
1225
+ model: string;
1226
+
1227
+ /**
1228
+ * @generated from field: bool down = 3;
1229
+ */
1230
+ down: boolean;
1231
+
1232
+ /**
1233
+ * "route" | "prefix"
1234
+ *
1235
+ * @generated from field: string source = 4;
1236
+ */
1237
+ source: string;
1238
+ };
1239
+
1240
+ /**
1241
+ * Describes the message llmleaf.v1.ModelEndpoint.
1242
+ * Use `create(ModelEndpointSchema)` to create a new message.
1243
+ */
1244
+ export const ModelEndpointSchema: GenMessage<ModelEndpoint> = /*@__PURE__*/
1245
+ messageDesc(file_llmleaf_v1_llmleaf, 35);
1246
+
1247
+ /**
1248
+ * @generated from message llmleaf.v1.ModelEntry
1249
+ */
1250
+ export type ModelEntry = Message<"llmleaf.v1.ModelEntry"> & {
1251
+ /**
1252
+ * @generated from field: string id = 1;
1253
+ */
1254
+ id: string;
1255
+
1256
+ /**
1257
+ * @generated from field: string canonical_slug = 2;
1258
+ */
1259
+ canonicalSlug: string;
1260
+
1261
+ /**
1262
+ * @generated from field: string name = 3;
1263
+ */
1264
+ name: string;
1265
+
1266
+ /**
1267
+ * @generated from field: int64 created = 4;
1268
+ */
1269
+ created: bigint;
1270
+
1271
+ /**
1272
+ * @generated from field: string description = 5;
1273
+ */
1274
+ description: string;
1275
+
1276
+ /**
1277
+ * @generated from field: optional uint32 context_length = 6;
1278
+ */
1279
+ contextLength?: number | undefined;
1280
+
1281
+ /**
1282
+ * @generated from field: llmleaf.v1.Architecture architecture = 7;
1283
+ */
1284
+ architecture?: Architecture | undefined;
1285
+
1286
+ /**
1287
+ * @generated from field: optional llmleaf.v1.Pricing pricing = 8;
1288
+ */
1289
+ pricing?: Pricing | undefined;
1290
+
1291
+ /**
1292
+ * @generated from field: llmleaf.v1.TopProvider top_provider = 9;
1293
+ */
1294
+ topProvider?: TopProvider | undefined;
1295
+
1296
+ /**
1297
+ * @generated from field: repeated string supported_parameters = 10;
1298
+ */
1299
+ supportedParameters: string[];
1300
+
1301
+ /**
1302
+ * @generated from field: repeated string unsupported_parameters = 11;
1303
+ */
1304
+ unsupportedParameters: string[];
1305
+
1306
+ /**
1307
+ * raw JSON object
1308
+ *
1309
+ * @generated from field: optional string default_parameters = 12;
1310
+ */
1311
+ defaultParameters?: string | undefined;
1312
+
1313
+ /**
1314
+ * admin-only
1315
+ *
1316
+ * @generated from field: repeated llmleaf.v1.ModelEndpoint endpoints = 13;
1317
+ */
1318
+ endpoints: ModelEndpoint[];
1319
+ };
1320
+
1321
+ /**
1322
+ * Describes the message llmleaf.v1.ModelEntry.
1323
+ * Use `create(ModelEntrySchema)` to create a new message.
1324
+ */
1325
+ export const ModelEntrySchema: GenMessage<ModelEntry> = /*@__PURE__*/
1326
+ messageDesc(file_llmleaf_v1_llmleaf, 36);
1327
+
1328
+ /**
1329
+ * @generated from message llmleaf.v1.ListModelsResponse
1330
+ */
1331
+ export type ListModelsResponse = Message<"llmleaf.v1.ListModelsResponse"> & {
1332
+ /**
1333
+ * @generated from field: repeated llmleaf.v1.ModelEntry data = 1;
1334
+ */
1335
+ data: ModelEntry[];
1336
+ };
1337
+
1338
+ /**
1339
+ * Describes the message llmleaf.v1.ListModelsResponse.
1340
+ * Use `create(ListModelsResponseSchema)` to create a new message.
1341
+ */
1342
+ export const ListModelsResponseSchema: GenMessage<ListModelsResponse> = /*@__PURE__*/
1343
+ messageDesc(file_llmleaf_v1_llmleaf, 37);
1344
+
1345
+ /**
1346
+ * @generated from message llmleaf.v1.BatchRequestItem
1347
+ */
1348
+ export type BatchRequestItem = Message<"llmleaf.v1.BatchRequestItem"> & {
1349
+ /**
1350
+ * @generated from field: string custom_id = 1;
1351
+ */
1352
+ customId: string;
1353
+
1354
+ /**
1355
+ * @generated from field: llmleaf.v1.ChatRequest body = 2;
1356
+ */
1357
+ body?: ChatRequest | undefined;
1358
+ };
1359
+
1360
+ /**
1361
+ * Describes the message llmleaf.v1.BatchRequestItem.
1362
+ * Use `create(BatchRequestItemSchema)` to create a new message.
1363
+ */
1364
+ export const BatchRequestItemSchema: GenMessage<BatchRequestItem> = /*@__PURE__*/
1365
+ messageDesc(file_llmleaf_v1_llmleaf, 38);
1366
+
1367
+ /**
1368
+ * @generated from message llmleaf.v1.BatchCreateRequest
1369
+ */
1370
+ export type BatchCreateRequest = Message<"llmleaf.v1.BatchCreateRequest"> & {
1371
+ /**
1372
+ * @generated from field: repeated llmleaf.v1.BatchRequestItem requests = 1;
1373
+ */
1374
+ requests: BatchRequestItem[];
1375
+ };
1376
+
1377
+ /**
1378
+ * Describes the message llmleaf.v1.BatchCreateRequest.
1379
+ * Use `create(BatchCreateRequestSchema)` to create a new message.
1380
+ */
1381
+ export const BatchCreateRequestSchema: GenMessage<BatchCreateRequest> = /*@__PURE__*/
1382
+ messageDesc(file_llmleaf_v1_llmleaf, 39);
1383
+
1384
+ /**
1385
+ * @generated from message llmleaf.v1.BatchCounts
1386
+ */
1387
+ export type BatchCounts = Message<"llmleaf.v1.BatchCounts"> & {
1388
+ /**
1389
+ * @generated from field: uint64 total = 1;
1390
+ */
1391
+ total: bigint;
1392
+
1393
+ /**
1394
+ * @generated from field: uint64 processing = 2;
1395
+ */
1396
+ processing: bigint;
1397
+
1398
+ /**
1399
+ * @generated from field: uint64 succeeded = 3;
1400
+ */
1401
+ succeeded: bigint;
1402
+
1403
+ /**
1404
+ * @generated from field: uint64 errored = 4;
1405
+ */
1406
+ errored: bigint;
1407
+
1408
+ /**
1409
+ * @generated from field: uint64 canceled = 5;
1410
+ */
1411
+ canceled: bigint;
1412
+
1413
+ /**
1414
+ * @generated from field: uint64 expired = 6;
1415
+ */
1416
+ expired: bigint;
1417
+ };
1418
+
1419
+ /**
1420
+ * Describes the message llmleaf.v1.BatchCounts.
1421
+ * Use `create(BatchCountsSchema)` to create a new message.
1422
+ */
1423
+ export const BatchCountsSchema: GenMessage<BatchCounts> = /*@__PURE__*/
1424
+ messageDesc(file_llmleaf_v1_llmleaf, 40);
1425
+
1426
+ /**
1427
+ * @generated from message llmleaf.v1.BatchHandle
1428
+ */
1429
+ export type BatchHandle = Message<"llmleaf.v1.BatchHandle"> & {
1430
+ /**
1431
+ * @generated from field: string id = 1;
1432
+ */
1433
+ id: string;
1434
+
1435
+ /**
1436
+ * @generated from field: llmleaf.v1.BatchStatus status = 2;
1437
+ */
1438
+ status: BatchStatus;
1439
+
1440
+ /**
1441
+ * @generated from field: llmleaf.v1.BatchCounts counts = 3;
1442
+ */
1443
+ counts?: BatchCounts | undefined;
1444
+
1445
+ /**
1446
+ * @generated from field: optional int64 created_at = 4;
1447
+ */
1448
+ createdAt?: bigint | undefined;
1449
+
1450
+ /**
1451
+ * @generated from field: optional int64 expires_at = 5;
1452
+ */
1453
+ expiresAt?: bigint | undefined;
1454
+
1455
+ /**
1456
+ * @generated from field: optional int64 ended_at = 6;
1457
+ */
1458
+ endedAt?: bigint | undefined;
1459
+
1460
+ /**
1461
+ * e.g. "/v1/chat/completions"
1462
+ *
1463
+ * @generated from field: optional string endpoint = 7;
1464
+ */
1465
+ endpoint?: string | undefined;
1466
+ };
1467
+
1468
+ /**
1469
+ * Describes the message llmleaf.v1.BatchHandle.
1470
+ * Use `create(BatchHandleSchema)` to create a new message.
1471
+ */
1472
+ export const BatchHandleSchema: GenMessage<BatchHandle> = /*@__PURE__*/
1473
+ messageDesc(file_llmleaf_v1_llmleaf, 41);
1474
+
1475
+ /**
1476
+ * One line of the JSONL results stream (GET /v1/batches/{id}/results).
1477
+ *
1478
+ * @generated from message llmleaf.v1.BatchResultLine
1479
+ */
1480
+ export type BatchResultLine = Message<"llmleaf.v1.BatchResultLine"> & {
1481
+ /**
1482
+ * @generated from field: string custom_id = 1;
1483
+ */
1484
+ customId: string;
1485
+
1486
+ /**
1487
+ * @generated from field: optional llmleaf.v1.BatchResponse response = 2;
1488
+ */
1489
+ response?: BatchResponse | undefined;
1490
+
1491
+ /**
1492
+ * @generated from field: optional llmleaf.v1.BatchError error = 3;
1493
+ */
1494
+ error?: BatchError | undefined;
1495
+ };
1496
+
1497
+ /**
1498
+ * Describes the message llmleaf.v1.BatchResultLine.
1499
+ * Use `create(BatchResultLineSchema)` to create a new message.
1500
+ */
1501
+ export const BatchResultLineSchema: GenMessage<BatchResultLine> = /*@__PURE__*/
1502
+ messageDesc(file_llmleaf_v1_llmleaf, 42);
1503
+
1504
+ /**
1505
+ * @generated from message llmleaf.v1.BatchResponse
1506
+ */
1507
+ export type BatchResponse = Message<"llmleaf.v1.BatchResponse"> & {
1508
+ /**
1509
+ * @generated from field: uint32 status_code = 1;
1510
+ */
1511
+ statusCode: number;
1512
+
1513
+ /**
1514
+ * @generated from field: llmleaf.v1.ChatResponse body = 2;
1515
+ */
1516
+ body?: ChatResponse | undefined;
1517
+ };
1518
+
1519
+ /**
1520
+ * Describes the message llmleaf.v1.BatchResponse.
1521
+ * Use `create(BatchResponseSchema)` to create a new message.
1522
+ */
1523
+ export const BatchResponseSchema: GenMessage<BatchResponse> = /*@__PURE__*/
1524
+ messageDesc(file_llmleaf_v1_llmleaf, 43);
1525
+
1526
+ /**
1527
+ * @generated from message llmleaf.v1.BatchError
1528
+ */
1529
+ export type BatchError = Message<"llmleaf.v1.BatchError"> & {
1530
+ /**
1531
+ * @generated from field: string code = 1;
1532
+ */
1533
+ code: string;
1534
+
1535
+ /**
1536
+ * @generated from field: string message = 2;
1537
+ */
1538
+ message: string;
1539
+ };
1540
+
1541
+ /**
1542
+ * Describes the message llmleaf.v1.BatchError.
1543
+ * Use `create(BatchErrorSchema)` to create a new message.
1544
+ */
1545
+ export const BatchErrorSchema: GenMessage<BatchError> = /*@__PURE__*/
1546
+ messageDesc(file_llmleaf_v1_llmleaf, 44);
1547
+
1548
+ /**
1549
+ * @generated from enum llmleaf.v1.Role
1550
+ */
1551
+ export enum Role {
1552
+ /**
1553
+ * @generated from enum value: ROLE_UNSPECIFIED = 0;
1554
+ */
1555
+ ROLE_UNSPECIFIED = 0,
1556
+
1557
+ /**
1558
+ * @generated from enum value: SYSTEM = 1;
1559
+ */
1560
+ SYSTEM = 1,
1561
+
1562
+ /**
1563
+ * @generated from enum value: USER = 2;
1564
+ */
1565
+ USER = 2,
1566
+
1567
+ /**
1568
+ * @generated from enum value: ASSISTANT = 3;
1569
+ */
1570
+ ASSISTANT = 3,
1571
+
1572
+ /**
1573
+ * @generated from enum value: TOOL = 4;
1574
+ */
1575
+ TOOL = 4,
1576
+ }
1577
+
1578
+ /**
1579
+ * Describes the enum llmleaf.v1.Role.
1580
+ */
1581
+ export const RoleSchema: GenEnum<Role> = /*@__PURE__*/
1582
+ enumDesc(file_llmleaf_v1_llmleaf, 0);
1583
+
1584
+ /**
1585
+ * @generated from enum llmleaf.v1.FinishReason
1586
+ */
1587
+ export enum FinishReason {
1588
+ /**
1589
+ * @generated from enum value: FINISH_REASON_UNSPECIFIED = 0;
1590
+ */
1591
+ FINISH_REASON_UNSPECIFIED = 0,
1592
+
1593
+ /**
1594
+ * @generated from enum value: STOP = 1;
1595
+ */
1596
+ STOP = 1,
1597
+
1598
+ /**
1599
+ * @generated from enum value: LENGTH = 2;
1600
+ */
1601
+ LENGTH = 2,
1602
+
1603
+ /**
1604
+ * @generated from enum value: TOOL_CALLS = 3;
1605
+ */
1606
+ TOOL_CALLS = 3,
1607
+
1608
+ /**
1609
+ * @generated from enum value: CONTENT_FILTER = 4;
1610
+ */
1611
+ CONTENT_FILTER = 4,
1612
+ }
1613
+
1614
+ /**
1615
+ * Describes the enum llmleaf.v1.FinishReason.
1616
+ */
1617
+ export const FinishReasonSchema: GenEnum<FinishReason> = /*@__PURE__*/
1618
+ enumDesc(file_llmleaf_v1_llmleaf, 1);
1619
+
1620
+ /**
1621
+ * @generated from enum llmleaf.v1.BatchStatus
1622
+ */
1623
+ export enum BatchStatus {
1624
+ /**
1625
+ * @generated from enum value: BATCH_STATUS_UNSPECIFIED = 0;
1626
+ */
1627
+ BATCH_STATUS_UNSPECIFIED = 0,
1628
+
1629
+ /**
1630
+ * @generated from enum value: VALIDATING = 1;
1631
+ */
1632
+ VALIDATING = 1,
1633
+
1634
+ /**
1635
+ * @generated from enum value: IN_PROGRESS = 2;
1636
+ */
1637
+ IN_PROGRESS = 2,
1638
+
1639
+ /**
1640
+ * @generated from enum value: FINALIZING = 3;
1641
+ */
1642
+ FINALIZING = 3,
1643
+
1644
+ /**
1645
+ * @generated from enum value: COMPLETED = 4;
1646
+ */
1647
+ COMPLETED = 4,
1648
+
1649
+ /**
1650
+ * @generated from enum value: FAILED = 5;
1651
+ */
1652
+ FAILED = 5,
1653
+
1654
+ /**
1655
+ * @generated from enum value: EXPIRED = 6;
1656
+ */
1657
+ EXPIRED = 6,
1658
+
1659
+ /**
1660
+ * @generated from enum value: CANCELING = 7;
1661
+ */
1662
+ CANCELING = 7,
1663
+
1664
+ /**
1665
+ * @generated from enum value: CANCELED = 8;
1666
+ */
1667
+ CANCELED = 8,
1668
+ }
1669
+
1670
+ /**
1671
+ * Describes the enum llmleaf.v1.BatchStatus.
1672
+ */
1673
+ export const BatchStatusSchema: GenEnum<BatchStatus> = /*@__PURE__*/
1674
+ enumDesc(file_llmleaf_v1_llmleaf, 2);
1675
+