@codefionn/llmleaf-client 0.1.7 → 0.1.9

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.
@@ -35,7 +35,7 @@ import type { Message } from "@bufbuild/protobuf";
35
35
  * Describes the file llmleaf/v1/llmleaf.proto.
36
36
  */
37
37
  export const file_llmleaf_v1_llmleaf: GenFile = /*@__PURE__*/
38
- fileDesc("ChhsbG1sZWFmL3YxL2xsbWxlYWYucHJvdG8SCmxsbWxlYWYudjEikAIKBVVzYWdlEhUKDXByb21wdF90b2tlbnMYASABKA0SGQoRY29tcGxldGlvbl90b2tlbnMYAiABKA0SFAoMdG90YWxfdG9rZW5zGAMgASgNEhUKCGNvc3RfdXNkGAQgASgBSACIAQESQwoVcHJvbXB0X3Rva2Vuc19kZXRhaWxzGAUgASgLMh8ubGxtbGVhZi52MS5Qcm9tcHRUb2tlbnNEZXRhaWxzSAGIAQESIgoVY2FjaGVfY3JlYXRpb25fdG9rZW5zGAYgASgNSAKIAQFCCwoJX2Nvc3RfdXNkQhgKFl9wcm9tcHRfdG9rZW5zX2RldGFpbHNCGAoWX2NhY2hlX2NyZWF0aW9uX3Rva2VucyJDChNQcm9tcHRUb2tlbnNEZXRhaWxzEhoKDWNhY2hlZF90b2tlbnMYASABKA1IAIgBAUIQCg5fY2FjaGVkX3Rva2VucyI1Cg1FcnJvclJlc3BvbnNlEiQKBWVycm9yGAEgASgLMhUubGxtbGVhZi52MS5FcnJvckJvZHkiVAoJRXJyb3JCb2R5Eg8KB21lc3NhZ2UYASABKAkSEQoEdHlwZRgCIAEoCUgAiAEBEhEKBGNvZGUYAyABKAlIAYgBAUIHCgVfdHlwZUIHCgVfY29kZSJqCgtDb250ZW50UGFydBIkCgR0ZXh0GAEgASgLMhQubGxtbGVhZi52MS5UZXh0UGFydEgAEi0KCWltYWdlX3VybBgCIAEoCzIYLmxsbWxlYWYudjEuSW1hZ2VVcmxQYXJ0SABCBgoEcGFydCIYCghUZXh0UGFydBIMCgR0ZXh0GAEgASgJIjsKDEltYWdlVXJsUGFydBILCgN1cmwYASABKAkSEwoGZGV0YWlsGAIgASgJSACIAQFCCQoHX2RldGFpbCI2CgxDb250ZW50UGFydHMSJgoFaXRlbXMYASADKAsyFy5sbG1sZWFmLnYxLkNvbnRlbnRQYXJ0Ii8KDEZ1bmN0aW9uQ2FsbBIMCgRuYW1lGAEgASgJEhEKCWFyZ3VtZW50cxgCIAEoCSJQCghUb29sQ2FsbBIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJEioKCGZ1bmN0aW9uGAMgASgLMhgubGxtbGVhZi52MS5GdW5jdGlvbkNhbGwiVQoRRnVuY3Rpb25DYWxsRGVsdGESEQoEbmFtZRgBIAEoCUgAiAEBEhYKCWFyZ3VtZW50cxgCIAEoCUgBiAEBQgcKBV9uYW1lQgwKCl9hcmd1bWVudHMilQEKDVRvb2xDYWxsRGVsdGESDQoFaW5kZXgYASABKA0SDwoCaWQYAiABKAlIAIgBARIRCgR0eXBlGAMgASgJSAGIAQESNAoIZnVuY3Rpb24YBCABKAsyHS5sbG1sZWFmLnYxLkZ1bmN0aW9uQ2FsbERlbHRhSAKIAQFCBQoDX2lkQgcKBV90eXBlQgsKCV9mdW5jdGlvbiL1AQoPUmVhc29uaW5nRGV0YWlsEgwKBHR5cGUYASABKAkSEQoEdGV4dBgCIAEoCUgAiAEBEhQKB3N1bW1hcnkYAyABKAlIAYgBARIRCgRkYXRhGAQgASgJSAKIAQESFgoJc2lnbmF0dXJlGAUgASgJSAOIAQESDwoCaWQYBiABKAlIBIgBARITCgZmb3JtYXQYByABKAlIBYgBARISCgVpbmRleBgIIAEoDUgGiAEBQgcKBV90ZXh0QgoKCF9zdW1tYXJ5QgcKBV9kYXRhQgwKCl9zaWduYXR1cmVCBQoDX2lkQgkKB19mb3JtYXRCCAoGX2luZGV4IsMCCgtDaGF0TWVzc2FnZRIeCgRyb2xlGAEgASgOMhAubGxtbGVhZi52MS5Sb2xlEg4KBHRleHQYAiABKAlIABIpCgVwYXJ0cxgDIAEoCzIYLmxsbWxlYWYudjEuQ29udGVudFBhcnRzSAASEQoEbmFtZRgEIAEoCUgBiAEBEigKCnRvb2xfY2FsbHMYBSADKAsyFC5sbG1sZWFmLnYxLlRvb2xDYWxsEhkKDHRvb2xfY2FsbF9pZBgGIAEoCUgCiAEBEhYKCXJlYXNvbmluZxgHIAEoCUgDiAEBEjYKEXJlYXNvbmluZ19kZXRhaWxzGAggAygLMhsubGxtbGVhZi52MS5SZWFzb25pbmdEZXRhaWxCCQoHY29udGVudEIHCgVfbmFtZUIPCg1fdG9vbF9jYWxsX2lkQgwKCl9yZWFzb25pbmcibQoLRnVuY3Rpb25EZWYSDAoEbmFtZRgBIAEoCRIYCgtkZXNjcmlwdGlvbhgCIAEoCUgAiAEBEhcKCnBhcmFtZXRlcnMYAyABKAlIAYgBAUIOCgxfZGVzY3JpcHRpb25CDQoLX3BhcmFtZXRlcnMiQgoHVG9vbERlZhIMCgR0eXBlGAEgASgJEikKCGZ1bmN0aW9uGAIgASgLMhcubGxtbGVhZi52MS5GdW5jdGlvbkRlZiJUCgpUb29sQ2hvaWNlEg4KBG1vZGUYASABKAlIABIsCgVuYW1lZBgCIAEoCzIbLmxsbWxlYWYudjEuTmFtZWRUb29sQ2hvaWNlSABCCAoGY2hvaWNlIksKD05hbWVkVG9vbENob2ljZRIMCgR0eXBlGAEgASgJEioKCGZ1bmN0aW9uGAIgASgLMhgubGxtbGVhZi52MS5GdW5jdGlvbk5hbWUiHAoMRnVuY3Rpb25OYW1lEgwKBG5hbWUYASABKAkiSAoOUmVzcG9uc2VGb3JtYXQSDAoEdHlwZRgBIAEoCRIYCgtqc29uX3NjaGVtYRgCIAEoCUgAiAEBQg4KDF9qc29uX3NjaGVtYSLFBQoLQ2hhdFJlcXVlc3QSDQoFbW9kZWwYASABKAkSKQoIbWVzc2FnZXMYAiADKAsyFy5sbG1sZWFmLnYxLkNoYXRNZXNzYWdlEhMKBnN0cmVhbRgDIAEoCEgAiAEBEhgKC3RlbXBlcmF0dXJlGAQgASgCSAGIAQESEgoFdG9wX3AYBSABKAJIAogBARIXCgptYXhfdG9rZW5zGAYgASgNSAOIAQESIgoVbWF4X2NvbXBsZXRpb25fdG9rZW5zGAcgASgNSASIAQESDAoEc3RvcBgIIAMoCRIOCgFuGAkgASgNSAWIAQESEQoEc2VlZBgKIAEoA0gGiAEBEh4KEWZyZXF1ZW5jeV9wZW5hbHR5GAsgASgCSAeIAQESHQoQcHJlc2VuY2VfcGVuYWx0eRgMIAEoAkgIiAEBEiIKBXRvb2xzGA0gAygLMhMubGxtbGVhZi52MS5Ub29sRGVmEjAKC3Rvb2xfY2hvaWNlGA4gASgLMhYubGxtbGVhZi52MS5Ub29sQ2hvaWNlSAmIAQESOAoPcmVzcG9uc2VfZm9ybWF0GA8gASgLMhoubGxtbGVhZi52MS5SZXNwb25zZUZvcm1hdEgKiAEBEh0KEHJlYXNvbmluZ19lZmZvcnQYECABKAlIC4gBARISCgVleHRyYRgRIAEoCUgMiAEBQgkKB19zdHJlYW1CDgoMX3RlbXBlcmF0dXJlQggKBl90b3BfcEINCgtfbWF4X3Rva2Vuc0IYChZfbWF4X2NvbXBsZXRpb25fdG9rZW5zQgQKAl9uQgcKBV9zZWVkQhQKEl9mcmVxdWVuY3lfcGVuYWx0eUITChFfcHJlc2VuY2VfcGVuYWx0eUIOCgxfdG9vbF9jaG9pY2VCEgoQX3Jlc3BvbnNlX2Zvcm1hdEITChFfcmVhc29uaW5nX2VmZm9ydEIICgZfZXh0cmEiiQEKBkNob2ljZRINCgVpbmRleBgBIAEoDRIoCgdtZXNzYWdlGAIgASgLMhcubGxtbGVhZi52MS5DaGF0TWVzc2FnZRI0Cg1maW5pc2hfcmVhc29uGAMgASgOMhgubGxtbGVhZi52MS5GaW5pc2hSZWFzb25IAIgBAUIQCg5fZmluaXNoX3JlYXNvbiKRAQoMQ2hhdFJlc3BvbnNlEgoKAmlkGAEgASgJEg4KBm9iamVjdBgCIAEoCRIPCgdjcmVhdGVkGAMgASgDEg0KBW1vZGVsGAQgASgJEiMKB2Nob2ljZXMYBSADKAsyEi5sbG1sZWFmLnYxLkNob2ljZRIgCgV1c2FnZRgGIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2Ui5AEKBURlbHRhEiMKBHJvbGUYASABKA4yEC5sbG1sZWFmLnYxLlJvbGVIAIgBARIUCgdjb250ZW50GAIgASgJSAGIAQESLQoKdG9vbF9jYWxscxgDIAMoCzIZLmxsbWxlYWYudjEuVG9vbENhbGxEZWx0YRIWCglyZWFzb25pbmcYBCABKAlIAogBARI2ChFyZWFzb25pbmdfZGV0YWlscxgFIAMoCzIbLmxsbWxlYWYudjEuUmVhc29uaW5nRGV0YWlsQgcKBV9yb2xlQgoKCF9jb250ZW50QgwKCl9yZWFzb25pbmcihgEKC0NodW5rQ2hvaWNlEg0KBWluZGV4GAEgASgNEiAKBWRlbHRhGAIgASgLMhEubGxtbGVhZi52MS5EZWx0YRI0Cg1maW5pc2hfcmVhc29uGAMgASgOMhgubGxtbGVhZi52MS5GaW5pc2hSZWFzb25IAIgBAUIQCg5fZmluaXNoX3JlYXNvbiKsAQoTQ2hhdENvbXBsZXRpb25DaHVuaxIKCgJpZBgBIAEoCRIOCgZvYmplY3QYAiABKAkSDwoHY3JlYXRlZBgDIAEoAxINCgVtb2RlbBgEIAEoCRIoCgdjaG9pY2VzGAUgAygLMhcubGxtbGVhZi52MS5DaHVua0Nob2ljZRIlCgV1c2FnZRgGIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2VIAIgBAUIICgZfdXNhZ2UiqAEKEEVtYmVkZGluZ1JlcXVlc3QSDQoFbW9kZWwYASABKAkSDQoFaW5wdXQYAiADKAkSFwoKZGltZW5zaW9ucxgDIAEoDUgAiAEBEhwKD2VuY29kaW5nX2Zvcm1hdBgEIAEoCUgBiAEBEhIKBWV4dHJhGAUgASgJSAKIAQFCDQoLX2RpbWVuc2lvbnNCEgoQX2VuY29kaW5nX2Zvcm1hdEIICgZfZXh0cmEiPQoJRW1iZWRkaW5nEg4KBm9iamVjdBgBIAEoCRINCgVpbmRleBgCIAEoDRIRCgllbWJlZGRpbmcYAyADKAIieQoRRW1iZWRkaW5nUmVzcG9uc2USDgoGb2JqZWN0GAEgASgJEiMKBGRhdGEYAiADKAsyFS5sbG1sZWFmLnYxLkVtYmVkZGluZxINCgVtb2RlbBgDIAEoCRIgCgV1c2FnZRgEIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2UiqgEKDVNwZWVjaFJlcXVlc3QSDQoFbW9kZWwYASABKAkSDQoFaW5wdXQYAiABKAkSDQoFdm9pY2UYAyABKAkSHAoPcmVzcG9uc2VfZm9ybWF0GAQgASgJSACIAQESEgoFc3BlZWQYBSABKAJIAYgBARISCgVleHRyYRgGIAEoCUgCiAEBQhIKEF9yZXNwb25zZV9mb3JtYXRCCAoGX3NwZWVkQggKBl9leHRyYSJCCgVWb2ljZRIKCgJpZBgBIAEoCRIRCgRuYW1lGAIgASgJSACIAQESEQoJbGFuZ3VhZ2VzGAMgAygJQgcKBV9uYW1lIkIKDlZvaWNlc1Jlc3BvbnNlEg0KBW1vZGVsGAEgASgJEiEKBnZvaWNlcxgCIAMoCzIRLmxsbWxlYWYudjEuVm9pY2UixQEKFFRyYW5zY3JpcHRpb25SZXF1ZXN0Eg0KBW1vZGVsGAEgASgJEhUKCGxhbmd1YWdlGAIgASgJSACIAQESEwoGcHJvbXB0GAMgASgJSAGIAQESHAoPcmVzcG9uc2VfZm9ybWF0GAQgASgJSAKIAQESGAoLdGVtcGVyYXR1cmUYBSABKAJIA4gBAUILCglfbGFuZ3VhZ2VCCQoHX3Byb21wdEISChBfcmVzcG9uc2VfZm9ybWF0Qg4KDF90ZW1wZXJhdHVyZSK6AQoVVHJhbnNjcmlwdGlvblJlc3BvbnNlEgwKBHRleHQYASABKAkSEQoEdGFzaxgCIAEoCUgAiAEBEhUKCGxhbmd1YWdlGAMgASgJSAGIAQESFQoIZHVyYXRpb24YBCABKAJIAogBARIlCgV1c2FnZRgFIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2VIA4gBAUIHCgVfdGFza0ILCglfbGFuZ3VhZ2VCCwoJX2R1cmF0aW9uQggKBl91c2FnZSKoAQoMQXJjaGl0ZWN0dXJlEhgKEGlucHV0X21vZGFsaXRpZXMYASADKAkSGQoRb3V0cHV0X21vZGFsaXRpZXMYAiADKAkSFQoIbW9kYWxpdHkYAyABKAlIAIgBARIRCgl0b2tlbml6ZXIYBCABKAkSGgoNaW5zdHJ1Y3RfdHlwZRgFIAEoCUgBiAEBQgsKCV9tb2RhbGl0eUIQCg5faW5zdHJ1Y3RfdHlwZSItCgdQcmljaW5nEg4KBnByb21wdBgBIAEoCRISCgpjb21wbGV0aW9uGAIgASgJIssBCgtUb3BQcm92aWRlchIbCg5jb250ZXh0X2xlbmd0aBgBIAEoDUgAiAEBEiIKFW1heF9jb21wbGV0aW9uX3Rva2VucxgCIAEoDUgBiAEBEhQKDGlzX21vZGVyYXRlZBgDIAEoCBIgChNtYXhfdGhpbmtpbmdfdG9rZW5zGAQgASgNSAKIAQFCEQoPX2NvbnRleHRfbGVuZ3RoQhgKFl9tYXhfY29tcGxldGlvbl90b2tlbnNCFgoUX21heF90aGlua2luZ190b2tlbnMiTgoNTW9kZWxFbmRwb2ludBIQCghwcm92aWRlchgBIAEoCRINCgVtb2RlbBgCIAEoCRIMCgRkb3duGAMgASgIEg4KBnNvdXJjZRgEIAEoCSLOAwoKTW9kZWxFbnRyeRIKCgJpZBgBIAEoCRIWCg5jYW5vbmljYWxfc2x1ZxgCIAEoCRIMCgRuYW1lGAMgASgJEg8KB2NyZWF0ZWQYBCABKAMSEwoLZGVzY3JpcHRpb24YBSABKAkSGwoOY29udGV4dF9sZW5ndGgYBiABKA1IAIgBARIuCgxhcmNoaXRlY3R1cmUYByABKAsyGC5sbG1sZWFmLnYxLkFyY2hpdGVjdHVyZRIpCgdwcmljaW5nGAggASgLMhMubGxtbGVhZi52MS5QcmljaW5nSAGIAQESLQoMdG9wX3Byb3ZpZGVyGAkgASgLMhcubGxtbGVhZi52MS5Ub3BQcm92aWRlchIcChRzdXBwb3J0ZWRfcGFyYW1ldGVycxgKIAMoCRIeChZ1bnN1cHBvcnRlZF9wYXJhbWV0ZXJzGAsgAygJEh8KEmRlZmF1bHRfcGFyYW1ldGVycxgMIAEoCUgCiAEBEiwKCWVuZHBvaW50cxgNIAMoCzIZLmxsbWxlYWYudjEuTW9kZWxFbmRwb2ludEIRCg9fY29udGV4dF9sZW5ndGhCCgoIX3ByaWNpbmdCFQoTX2RlZmF1bHRfcGFyYW1ldGVycyI6ChJMaXN0TW9kZWxzUmVzcG9uc2USJAoEZGF0YRgBIAMoCzIWLmxsbWxlYWYudjEuTW9kZWxFbnRyeSJMChBCYXRjaFJlcXVlc3RJdGVtEhEKCWN1c3RvbV9pZBgBIAEoCRIlCgRib2R5GAIgASgLMhcubGxtbGVhZi52MS5DaGF0UmVxdWVzdCJEChJCYXRjaENyZWF0ZVJlcXVlc3QSLgoIcmVxdWVzdHMYASADKAsyHC5sbG1sZWFmLnYxLkJhdGNoUmVxdWVzdEl0ZW0idwoLQmF0Y2hDb3VudHMSDQoFdG90YWwYASABKAQSEgoKcHJvY2Vzc2luZxgCIAEoBBIRCglzdWNjZWVkZWQYAyABKAQSDwoHZXJyb3JlZBgEIAEoBBIQCghjYW5jZWxlZBgFIAEoBBIPCgdleHBpcmVkGAYgASgEIoMCCgtCYXRjaEhhbmRsZRIKCgJpZBgBIAEoCRInCgZzdGF0dXMYAiABKA4yFy5sbG1sZWFmLnYxLkJhdGNoU3RhdHVzEicKBmNvdW50cxgDIAEoCzIXLmxsbWxlYWYudjEuQmF0Y2hDb3VudHMSFwoKY3JlYXRlZF9hdBgEIAEoA0gAiAEBEhcKCmV4cGlyZXNfYXQYBSABKANIAYgBARIVCghlbmRlZF9hdBgGIAEoA0gCiAEBEhUKCGVuZHBvaW50GAcgASgJSAOIAQFCDQoLX2NyZWF0ZWRfYXRCDQoLX2V4cGlyZXNfYXRCCwoJX2VuZGVkX2F0QgsKCV9lbmRwb2ludCKZAQoPQmF0Y2hSZXN1bHRMaW5lEhEKCWN1c3RvbV9pZBgBIAEoCRIwCghyZXNwb25zZRgCIAEoCzIZLmxsbWxlYWYudjEuQmF0Y2hSZXNwb25zZUgAiAEBEioKBWVycm9yGAMgASgLMhYubGxtbGVhZi52MS5CYXRjaEVycm9ySAGIAQFCCwoJX3Jlc3BvbnNlQggKBl9lcnJvciJMCg1CYXRjaFJlc3BvbnNlEhMKC3N0YXR1c19jb2RlGAEgASgNEiYKBGJvZHkYAiABKAsyGC5sbG1sZWFmLnYxLkNoYXRSZXNwb25zZSIrCgpCYXRjaEVycm9yEgwKBGNvZGUYASABKAkSDwoHbWVzc2FnZRgCIAEoCSpLCgRSb2xlEhQKEFJPTEVfVU5TUEVDSUZJRUQQABIKCgZTWVNURU0QARIICgRVU0VSEAISDQoJQVNTSVNUQU5UEAMSCAoEVE9PTBAEKmcKDEZpbmlzaFJlYXNvbhIdChlGSU5JU0hfUkVBU09OX1VOU1BFQ0lGSUVEEAASCAoEU1RPUBABEgoKBkxFTkdUSBACEg4KClRPT0xfQ0FMTFMQAxISCg5DT05URU5UX0ZJTFRFUhAEKqEBCgtCYXRjaFN0YXR1cxIcChhCQVRDSF9TVEFUVVNfVU5TUEVDSUZJRUQQABIOCgpWQUxJREFUSU5HEAESDwoLSU5fUFJPR1JFU1MQAhIOCgpGSU5BTElaSU5HEAMSDQoJQ09NUExFVEVEEAQSCgoGRkFJTEVEEAUSCwoHRVhQSVJFRBAGEg0KCUNBTkNFTElORxAHEgwKCENBTkNFTEVEEAhCWAoXZXUuY29kZWZpb25uLmxsbWxlYWYudjFQAVo7Z2l0aHViLmNvbS9jb2RlZmlvbm4vbGxtbGVhZi9jbGllbnRzL2dvL2xsbWxlYWZwYjtsbG1sZWFmcGJiBnByb3RvMw");
38
+ fileDesc("ChhsbG1sZWFmL3YxL2xsbWxlYWYucHJvdG8SCmxsbWxlYWYudjEikAIKBVVzYWdlEhUKDXByb21wdF90b2tlbnMYASABKA0SGQoRY29tcGxldGlvbl90b2tlbnMYAiABKA0SFAoMdG90YWxfdG9rZW5zGAMgASgNEhUKCGNvc3RfdXNkGAQgASgBSACIAQESQwoVcHJvbXB0X3Rva2Vuc19kZXRhaWxzGAUgASgLMh8ubGxtbGVhZi52MS5Qcm9tcHRUb2tlbnNEZXRhaWxzSAGIAQESIgoVY2FjaGVfY3JlYXRpb25fdG9rZW5zGAYgASgNSAKIAQFCCwoJX2Nvc3RfdXNkQhgKFl9wcm9tcHRfdG9rZW5zX2RldGFpbHNCGAoWX2NhY2hlX2NyZWF0aW9uX3Rva2VucyJDChNQcm9tcHRUb2tlbnNEZXRhaWxzEhoKDWNhY2hlZF90b2tlbnMYASABKA1IAIgBAUIQCg5fY2FjaGVkX3Rva2VucyI1Cg1FcnJvclJlc3BvbnNlEiQKBWVycm9yGAEgASgLMhUubGxtbGVhZi52MS5FcnJvckJvZHkiVAoJRXJyb3JCb2R5Eg8KB21lc3NhZ2UYASABKAkSEQoEdHlwZRgCIAEoCUgAiAEBEhEKBGNvZGUYAyABKAlIAYgBAUIHCgVfdHlwZUIHCgVfY29kZSJqCgtDb250ZW50UGFydBIkCgR0ZXh0GAEgASgLMhQubGxtbGVhZi52MS5UZXh0UGFydEgAEi0KCWltYWdlX3VybBgCIAEoCzIYLmxsbWxlYWYudjEuSW1hZ2VVcmxQYXJ0SABCBgoEcGFydCIYCghUZXh0UGFydBIMCgR0ZXh0GAEgASgJIjsKDEltYWdlVXJsUGFydBILCgN1cmwYASABKAkSEwoGZGV0YWlsGAIgASgJSACIAQFCCQoHX2RldGFpbCI2CgxDb250ZW50UGFydHMSJgoFaXRlbXMYASADKAsyFy5sbG1sZWFmLnYxLkNvbnRlbnRQYXJ0Ii8KDEZ1bmN0aW9uQ2FsbBIMCgRuYW1lGAEgASgJEhEKCWFyZ3VtZW50cxgCIAEoCSJQCghUb29sQ2FsbBIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJEioKCGZ1bmN0aW9uGAMgASgLMhgubGxtbGVhZi52MS5GdW5jdGlvbkNhbGwiVQoRRnVuY3Rpb25DYWxsRGVsdGESEQoEbmFtZRgBIAEoCUgAiAEBEhYKCWFyZ3VtZW50cxgCIAEoCUgBiAEBQgcKBV9uYW1lQgwKCl9hcmd1bWVudHMilQEKDVRvb2xDYWxsRGVsdGESDQoFaW5kZXgYASABKA0SDwoCaWQYAiABKAlIAIgBARIRCgR0eXBlGAMgASgJSAGIAQESNAoIZnVuY3Rpb24YBCABKAsyHS5sbG1sZWFmLnYxLkZ1bmN0aW9uQ2FsbERlbHRhSAKIAQFCBQoDX2lkQgcKBV90eXBlQgsKCV9mdW5jdGlvbiL1AQoPUmVhc29uaW5nRGV0YWlsEgwKBHR5cGUYASABKAkSEQoEdGV4dBgCIAEoCUgAiAEBEhQKB3N1bW1hcnkYAyABKAlIAYgBARIRCgRkYXRhGAQgASgJSAKIAQESFgoJc2lnbmF0dXJlGAUgASgJSAOIAQESDwoCaWQYBiABKAlIBIgBARITCgZmb3JtYXQYByABKAlIBYgBARISCgVpbmRleBgIIAEoDUgGiAEBQgcKBV90ZXh0QgoKCF9zdW1tYXJ5QgcKBV9kYXRhQgwKCl9zaWduYXR1cmVCBQoDX2lkQgkKB19mb3JtYXRCCAoGX2luZGV4IsMCCgtDaGF0TWVzc2FnZRIeCgRyb2xlGAEgASgOMhAubGxtbGVhZi52MS5Sb2xlEg4KBHRleHQYAiABKAlIABIpCgVwYXJ0cxgDIAEoCzIYLmxsbWxlYWYudjEuQ29udGVudFBhcnRzSAASEQoEbmFtZRgEIAEoCUgBiAEBEigKCnRvb2xfY2FsbHMYBSADKAsyFC5sbG1sZWFmLnYxLlRvb2xDYWxsEhkKDHRvb2xfY2FsbF9pZBgGIAEoCUgCiAEBEhYKCXJlYXNvbmluZxgHIAEoCUgDiAEBEjYKEXJlYXNvbmluZ19kZXRhaWxzGAggAygLMhsubGxtbGVhZi52MS5SZWFzb25pbmdEZXRhaWxCCQoHY29udGVudEIHCgVfbmFtZUIPCg1fdG9vbF9jYWxsX2lkQgwKCl9yZWFzb25pbmcibQoLRnVuY3Rpb25EZWYSDAoEbmFtZRgBIAEoCRIYCgtkZXNjcmlwdGlvbhgCIAEoCUgAiAEBEhcKCnBhcmFtZXRlcnMYAyABKAlIAYgBAUIOCgxfZGVzY3JpcHRpb25CDQoLX3BhcmFtZXRlcnMiQgoHVG9vbERlZhIMCgR0eXBlGAEgASgJEikKCGZ1bmN0aW9uGAIgASgLMhcubGxtbGVhZi52MS5GdW5jdGlvbkRlZiJUCgpUb29sQ2hvaWNlEg4KBG1vZGUYASABKAlIABIsCgVuYW1lZBgCIAEoCzIbLmxsbWxlYWYudjEuTmFtZWRUb29sQ2hvaWNlSABCCAoGY2hvaWNlIksKD05hbWVkVG9vbENob2ljZRIMCgR0eXBlGAEgASgJEioKCGZ1bmN0aW9uGAIgASgLMhgubGxtbGVhZi52MS5GdW5jdGlvbk5hbWUiHAoMRnVuY3Rpb25OYW1lEgwKBG5hbWUYASABKAkiSAoOUmVzcG9uc2VGb3JtYXQSDAoEdHlwZRgBIAEoCRIYCgtqc29uX3NjaGVtYRgCIAEoCUgAiAEBQg4KDF9qc29uX3NjaGVtYSLFBQoLQ2hhdFJlcXVlc3QSDQoFbW9kZWwYASABKAkSKQoIbWVzc2FnZXMYAiADKAsyFy5sbG1sZWFmLnYxLkNoYXRNZXNzYWdlEhMKBnN0cmVhbRgDIAEoCEgAiAEBEhgKC3RlbXBlcmF0dXJlGAQgASgCSAGIAQESEgoFdG9wX3AYBSABKAJIAogBARIXCgptYXhfdG9rZW5zGAYgASgNSAOIAQESIgoVbWF4X2NvbXBsZXRpb25fdG9rZW5zGAcgASgNSASIAQESDAoEc3RvcBgIIAMoCRIOCgFuGAkgASgNSAWIAQESEQoEc2VlZBgKIAEoA0gGiAEBEh4KEWZyZXF1ZW5jeV9wZW5hbHR5GAsgASgCSAeIAQESHQoQcHJlc2VuY2VfcGVuYWx0eRgMIAEoAkgIiAEBEiIKBXRvb2xzGA0gAygLMhMubGxtbGVhZi52MS5Ub29sRGVmEjAKC3Rvb2xfY2hvaWNlGA4gASgLMhYubGxtbGVhZi52MS5Ub29sQ2hvaWNlSAmIAQESOAoPcmVzcG9uc2VfZm9ybWF0GA8gASgLMhoubGxtbGVhZi52MS5SZXNwb25zZUZvcm1hdEgKiAEBEh0KEHJlYXNvbmluZ19lZmZvcnQYECABKAlIC4gBARISCgVleHRyYRgRIAEoCUgMiAEBQgkKB19zdHJlYW1CDgoMX3RlbXBlcmF0dXJlQggKBl90b3BfcEINCgtfbWF4X3Rva2Vuc0IYChZfbWF4X2NvbXBsZXRpb25fdG9rZW5zQgQKAl9uQgcKBV9zZWVkQhQKEl9mcmVxdWVuY3lfcGVuYWx0eUITChFfcHJlc2VuY2VfcGVuYWx0eUIOCgxfdG9vbF9jaG9pY2VCEgoQX3Jlc3BvbnNlX2Zvcm1hdEITChFfcmVhc29uaW5nX2VmZm9ydEIICgZfZXh0cmEiiQEKBkNob2ljZRINCgVpbmRleBgBIAEoDRIoCgdtZXNzYWdlGAIgASgLMhcubGxtbGVhZi52MS5DaGF0TWVzc2FnZRI0Cg1maW5pc2hfcmVhc29uGAMgASgOMhgubGxtbGVhZi52MS5GaW5pc2hSZWFzb25IAIgBAUIQCg5fZmluaXNoX3JlYXNvbiKRAQoMQ2hhdFJlc3BvbnNlEgoKAmlkGAEgASgJEg4KBm9iamVjdBgCIAEoCRIPCgdjcmVhdGVkGAMgASgDEg0KBW1vZGVsGAQgASgJEiMKB2Nob2ljZXMYBSADKAsyEi5sbG1sZWFmLnYxLkNob2ljZRIgCgV1c2FnZRgGIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2Ui5AEKBURlbHRhEiMKBHJvbGUYASABKA4yEC5sbG1sZWFmLnYxLlJvbGVIAIgBARIUCgdjb250ZW50GAIgASgJSAGIAQESLQoKdG9vbF9jYWxscxgDIAMoCzIZLmxsbWxlYWYudjEuVG9vbENhbGxEZWx0YRIWCglyZWFzb25pbmcYBCABKAlIAogBARI2ChFyZWFzb25pbmdfZGV0YWlscxgFIAMoCzIbLmxsbWxlYWYudjEuUmVhc29uaW5nRGV0YWlsQgcKBV9yb2xlQgoKCF9jb250ZW50QgwKCl9yZWFzb25pbmcihgEKC0NodW5rQ2hvaWNlEg0KBWluZGV4GAEgASgNEiAKBWRlbHRhGAIgASgLMhEubGxtbGVhZi52MS5EZWx0YRI0Cg1maW5pc2hfcmVhc29uGAMgASgOMhgubGxtbGVhZi52MS5GaW5pc2hSZWFzb25IAIgBAUIQCg5fZmluaXNoX3JlYXNvbiKsAQoTQ2hhdENvbXBsZXRpb25DaHVuaxIKCgJpZBgBIAEoCRIOCgZvYmplY3QYAiABKAkSDwoHY3JlYXRlZBgDIAEoAxINCgVtb2RlbBgEIAEoCRIoCgdjaG9pY2VzGAUgAygLMhcubGxtbGVhZi52MS5DaHVua0Nob2ljZRIlCgV1c2FnZRgGIAEoCzIRLmxsbWxlYWYudjEuVXNhZ2VIAIgBAUIICgZfdXNhZ2UijQIKDFJlc3BvbnNlSXRlbRIyCgdtZXNzYWdlGAEgASgLMh8ubGxtbGVhZi52MS5SZXNwb25zZU1lc3NhZ2VJdGVtSAASPQoNZnVuY3Rpb25fY2FsbBgCIAEoCzIkLmxsbWxlYWYudjEuUmVzcG9uc2VGdW5jdGlvbkNhbGxJdGVtSAASSgoUZnVuY3Rpb25fY2FsbF9vdXRwdXQYAyABKAsyKi5sbG1sZWFmLnYxLlJlc3BvbnNlRnVuY3Rpb25DYWxsT3V0cHV0SXRlbUgAEjYKCXJlYXNvbmluZxgEIAEoCzIhLmxsbWxlYWYudjEuUmVzcG9uc2VSZWFzb25pbmdJdGVtSABCBgoEaXRlbSI7ChBSZXNwb25zZUl0ZW1MaXN0EicKBWl0ZW1zGAEgAygLMhgubGxtbGVhZi52MS5SZXNwb25zZUl0ZW0iqQEKE1Jlc3BvbnNlTWVzc2FnZUl0ZW0SDwoCaWQYASABKAlIAYgBARIMCgRyb2xlGAIgASgJEg4KBHRleHQYAyABKAlIABIxCgVwYXJ0cxgEIAEoCzIgLmxsbWxlYWYudjEuUmVzcG9uc2VDb250ZW50UGFydHNIABITCgZzdGF0dXMYBSABKAlIAogBAUIJCgdjb250ZW50QgUKA19pZEIJCgdfc3RhdHVzIsEBChNSZXNwb25zZUNvbnRlbnRQYXJ0EjIKCmlucHV0X3RleHQYASABKAsyHC5sbG1sZWFmLnYxLlJlc3BvbnNlVGV4dFBhcnRIABI5CgtpbnB1dF9pbWFnZRgCIAEoCzIiLmxsbWxlYWYudjEuUmVzcG9uc2VJbnB1dEltYWdlUGFydEgAEjMKC291dHB1dF90ZXh0GAMgASgLMhwubGxtbGVhZi52MS5SZXNwb25zZVRleHRQYXJ0SABCBgoEcGFydCJGChRSZXNwb25zZUNvbnRlbnRQYXJ0cxIuCgVpdGVtcxgBIAMoCzIfLmxsbWxlYWYudjEuUmVzcG9uc2VDb250ZW50UGFydCIgChBSZXNwb25zZVRleHRQYXJ0EgwKBHRleHQYASABKAkiSwoWUmVzcG9uc2VJbnB1dEltYWdlUGFydBIRCglpbWFnZV91cmwYASABKAkSEwoGZGV0YWlsGAIgASgJSACIAQFCCQoHX2RldGFpbCKEAQoYUmVzcG9uc2VGdW5jdGlvbkNhbGxJdGVtEg8KAmlkGAEgASgJSACIAQESDwoHY2FsbF9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEhEKCWFyZ3VtZW50cxgEIAEoCRITCgZzdGF0dXMYBSABKAlIAYgBAUIFCgNfaWRCCQoHX3N0YXR1cyJZCh5SZXNwb25zZUZ1bmN0aW9uQ2FsbE91dHB1dEl0ZW0SDwoCaWQYASABKAlIAIgBARIPCgdjYWxsX2lkGAIgASgJEg4KBm91dHB1dBgDIAEoCUIFCgNfaWQizQEKFVJlc3BvbnNlUmVhc29uaW5nSXRlbRIPCgJpZBgBIAEoCUgAiAEBEjIKB3N1bW1hcnkYAiADKAsyIS5sbG1sZWFmLnYxLlJlc3BvbnNlUmVhc29uaW5nVGV4dBIyCgdjb250ZW50GAMgAygLMiEubGxtbGVhZi52MS5SZXNwb25zZVJlYXNvbmluZ1RleHQSHgoRZW5jcnlwdGVkX2NvbnRlbnQYBCABKAlIAYgBAUIFCgNfaWRCFAoSX2VuY3J5cHRlZF9jb250ZW50IiUKFVJlc3BvbnNlUmVhc29uaW5nVGV4dBIMCgR0ZXh0GAEgASgJIqABChBSZXNwb25zZXNUb29sRGVmEgwKBHR5cGUYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEhcKCnBhcmFtZXRlcnMYBCABKAlIAYgBARITCgZzdHJpY3QYBSABKAhIAogBAUIOCgxfZGVzY3JpcHRpb25CDQoLX3BhcmFtZXRlcnNCCQoHX3N0cmljdCJmChNSZXNwb25zZXNUb29sQ2hvaWNlEg4KBG1vZGUYASABKAlIABI1CgVuYW1lZBgCIAEoCzIkLmxsbWxlYWYudjEuUmVzcG9uc2VzTmFtZWRUb29sQ2hvaWNlSABCCAoGY2hvaWNlIjYKGFJlc3BvbnNlc05hbWVkVG9vbENob2ljZRIMCgR0eXBlGAEgASgJEgwKBG5hbWUYAiABKAkiVgoSUmVzcG9uc2VzUmVhc29uaW5nEhMKBmVmZm9ydBgBIAEoCUgAiAEBEhQKB3N1bW1hcnkYAiABKAlIAYgBAUIJCgdfZWZmb3J0QgoKCF9zdW1tYXJ5Iq0EChBSZXNwb25zZXNSZXF1ZXN0Eg0KBW1vZGVsGAEgASgJEg4KBHRleHQYAiABKAlIABItCgVpdGVtcxgDIAEoCzIcLmxsbWxlYWYudjEuUmVzcG9uc2VJdGVtTGlzdEgAEhkKDGluc3RydWN0aW9ucxgEIAEoCUgBiAEBEhMKBnN0cmVhbRgFIAEoCEgCiAEBEhgKC3RlbXBlcmF0dXJlGAYgASgCSAOIAQESEgoFdG9wX3AYByABKAJIBIgBARIeChFtYXhfb3V0cHV0X3Rva2VucxgIIAEoDUgFiAEBEisKBXRvb2xzGAkgAygLMhwubGxtbGVhZi52MS5SZXNwb25zZXNUb29sRGVmEjkKC3Rvb2xfY2hvaWNlGAogASgLMh8ubGxtbGVhZi52MS5SZXNwb25zZXNUb29sQ2hvaWNlSAaIAQESNgoJcmVhc29uaW5nGAsgASgLMh4ubGxtbGVhZi52MS5SZXNwb25zZXNSZWFzb25pbmdIB4gBARISCgVzdG9yZRgMIAEoCEgIiAEBEhIKBWV4dHJhGA0gASgJSAmIAQFCBwoFaW5wdXRCDwoNX2luc3RydWN0aW9uc0IJCgdfc3RyZWFtQg4KDF90ZW1wZXJhdHVyZUIICgZfdG9wX3BCFAoSX21heF9vdXRwdXRfdG9rZW5zQg4KDF90b29sX2Nob2ljZUIMCgpfcmVhc29uaW5nQggKBl9zdG9yZUIICgZfZXh0cmEioAIKDlJlc3BvbnNlc1VzYWdlEhQKDGlucHV0X3Rva2VucxgBIAEoDRJKChRpbnB1dF90b2tlbnNfZGV0YWlscxgCIAEoCzInLmxsbWxlYWYudjEuUmVzcG9uc2VzSW5wdXRUb2tlbnNEZXRhaWxzSACIAQESFQoNb3V0cHV0X3Rva2VucxgDIAEoDRJMChVvdXRwdXRfdG9rZW5zX2RldGFpbHMYBCABKAsyKC5sbG1sZWFmLnYxLlJlc3BvbnNlc091dHB1dFRva2Vuc0RldGFpbHNIAYgBARIUCgx0b3RhbF90b2tlbnMYBSABKA1CFwoVX2lucHV0X3Rva2Vuc19kZXRhaWxzQhgKFl9vdXRwdXRfdG9rZW5zX2RldGFpbHMiSwobUmVzcG9uc2VzSW5wdXRUb2tlbnNEZXRhaWxzEhoKDWNhY2hlZF90b2tlbnMYASABKA1IAIgBAUIQCg5fY2FjaGVkX3Rva2VucyJSChxSZXNwb25zZXNPdXRwdXRUb2tlbnNEZXRhaWxzEh0KEHJlYXNvbmluZ190b2tlbnMYASABKA1IAIgBAUITChFfcmVhc29uaW5nX3Rva2VucyIsChpSZXNwb25zZXNJbmNvbXBsZXRlRGV0YWlscxIOCgZyZWFzb24YASABKAki6QQKEVJlc3BvbnNlc1Jlc3BvbnNlEgoKAmlkGAEgASgJEg4KBm9iamVjdBgCIAEoCRISCgpjcmVhdGVkX2F0GAMgASgDEg4KBnN0YXR1cxgEIAEoCRJHChJpbmNvbXBsZXRlX2RldGFpbHMYBSABKAsyJi5sbG1sZWFmLnYxLlJlc3BvbnNlc0luY29tcGxldGVEZXRhaWxzSACIAQESKQoFZXJyb3IYBiABKAsyFS5sbG1sZWFmLnYxLkVycm9yQm9keUgBiAEBEg0KBW1vZGVsGAcgASgJEigKBm91dHB1dBgIIAMoCzIYLmxsbWxlYWYudjEuUmVzcG9uc2VJdGVtEi4KBXVzYWdlGAkgASgLMhoubGxtbGVhZi52MS5SZXNwb25zZXNVc2FnZUgCiAEBEhIKBXN0b3JlGAogASgISAOIAQESGQoMaW5zdHJ1Y3Rpb25zGAsgASgJSASIAQESHgoRbWF4X291dHB1dF90b2tlbnMYDCABKA1IBYgBARIYCgt0ZW1wZXJhdHVyZRgNIAEoAkgGiAEBEhIKBXRvcF9wGA4gASgCSAeIAQESNgoJcmVhc29uaW5nGA8gASgLMh4ubGxtbGVhZi52MS5SZXNwb25zZXNSZWFzb25pbmdICIgBAUIVChNfaW5jb21wbGV0ZV9kZXRhaWxzQggKBl9lcnJvckIICgZfdXNhZ2VCCAoGX3N0b3JlQg8KDV9pbnN0cnVjdGlvbnNCFAoSX21heF9vdXRwdXRfdG9rZW5zQg4KDF90ZW1wZXJhdHVyZUIICgZfdG9wX3BCDAoKX3JlYXNvbmluZyLxAwoUUmVzcG9uc2VzU3RyZWFtRXZlbnQSDAoEdHlwZRgBIAEoCRIXCg9zZXF1ZW5jZV9udW1iZXIYAiABKAQSNAoIcmVzcG9uc2UYAyABKAsyHS5sbG1sZWFmLnYxLlJlc3BvbnNlc1Jlc3BvbnNlSACIAQESGQoMb3V0cHV0X2luZGV4GAQgASgNSAGIAQESFAoHaXRlbV9pZBgFIAEoCUgCiAEBEhoKDWNvbnRlbnRfaW5kZXgYBiABKA1IA4gBARIrCgRpdGVtGAcgASgLMhgubGxtbGVhZi52MS5SZXNwb25zZUl0ZW1IBIgBARIyCgRwYXJ0GAggASgLMh8ubGxtbGVhZi52MS5SZXNwb25zZUNvbnRlbnRQYXJ0SAWIAQESEgoFZGVsdGEYCSABKAlIBogBARIRCgR0ZXh0GAogASgJSAeIAQESFgoJYXJndW1lbnRzGAsgASgJSAiIAQESFAoHbWVzc2FnZRgMIAEoCUgJiAEBQgsKCV9yZXNwb25zZUIPCg1fb3V0cHV0X2luZGV4QgoKCF9pdGVtX2lkQhAKDl9jb250ZW50X2luZGV4QgcKBV9pdGVtQgcKBV9wYXJ0QggKBl9kZWx0YUIHCgVfdGV4dEIMCgpfYXJndW1lbnRzQgoKCF9tZXNzYWdlIqgBChBFbWJlZGRpbmdSZXF1ZXN0Eg0KBW1vZGVsGAEgASgJEg0KBWlucHV0GAIgAygJEhcKCmRpbWVuc2lvbnMYAyABKA1IAIgBARIcCg9lbmNvZGluZ19mb3JtYXQYBCABKAlIAYgBARISCgVleHRyYRgFIAEoCUgCiAEBQg0KC19kaW1lbnNpb25zQhIKEF9lbmNvZGluZ19mb3JtYXRCCAoGX2V4dHJhIj0KCUVtYmVkZGluZxIOCgZvYmplY3QYASABKAkSDQoFaW5kZXgYAiABKA0SEQoJZW1iZWRkaW5nGAMgAygCInkKEUVtYmVkZGluZ1Jlc3BvbnNlEg4KBm9iamVjdBgBIAEoCRIjCgRkYXRhGAIgAygLMhUubGxtbGVhZi52MS5FbWJlZGRpbmcSDQoFbW9kZWwYAyABKAkSIAoFdXNhZ2UYBCABKAsyES5sbG1sZWFmLnYxLlVzYWdlIqoBCg1TcGVlY2hSZXF1ZXN0Eg0KBW1vZGVsGAEgASgJEg0KBWlucHV0GAIgASgJEg0KBXZvaWNlGAMgASgJEhwKD3Jlc3BvbnNlX2Zvcm1hdBgEIAEoCUgAiAEBEhIKBXNwZWVkGAUgASgCSAGIAQESEgoFZXh0cmEYBiABKAlIAogBAUISChBfcmVzcG9uc2VfZm9ybWF0QggKBl9zcGVlZEIICgZfZXh0cmEiQgoFVm9pY2USCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhEKCWxhbmd1YWdlcxgDIAMoCUIHCgVfbmFtZSJCCg5Wb2ljZXNSZXNwb25zZRINCgVtb2RlbBgBIAEoCRIhCgZ2b2ljZXMYAiADKAsyES5sbG1sZWFmLnYxLlZvaWNlIsUBChRUcmFuc2NyaXB0aW9uUmVxdWVzdBINCgVtb2RlbBgBIAEoCRIVCghsYW5ndWFnZRgCIAEoCUgAiAEBEhMKBnByb21wdBgDIAEoCUgBiAEBEhwKD3Jlc3BvbnNlX2Zvcm1hdBgEIAEoCUgCiAEBEhgKC3RlbXBlcmF0dXJlGAUgASgCSAOIAQFCCwoJX2xhbmd1YWdlQgkKB19wcm9tcHRCEgoQX3Jlc3BvbnNlX2Zvcm1hdEIOCgxfdGVtcGVyYXR1cmUiugEKFVRyYW5zY3JpcHRpb25SZXNwb25zZRIMCgR0ZXh0GAEgASgJEhEKBHRhc2sYAiABKAlIAIgBARIVCghsYW5ndWFnZRgDIAEoCUgBiAEBEhUKCGR1cmF0aW9uGAQgASgCSAKIAQESJQoFdXNhZ2UYBSABKAsyES5sbG1sZWFmLnYxLlVzYWdlSAOIAQFCBwoFX3Rhc2tCCwoJX2xhbmd1YWdlQgsKCV9kdXJhdGlvbkIICgZfdXNhZ2UiqAEKDEFyY2hpdGVjdHVyZRIYChBpbnB1dF9tb2RhbGl0aWVzGAEgAygJEhkKEW91dHB1dF9tb2RhbGl0aWVzGAIgAygJEhUKCG1vZGFsaXR5GAMgASgJSACIAQESEQoJdG9rZW5pemVyGAQgASgJEhoKDWluc3RydWN0X3R5cGUYBSABKAlIAYgBAUILCglfbW9kYWxpdHlCEAoOX2luc3RydWN0X3R5cGUiLQoHUHJpY2luZxIOCgZwcm9tcHQYASABKAkSEgoKY29tcGxldGlvbhgCIAEoCSLLAQoLVG9wUHJvdmlkZXISGwoOY29udGV4dF9sZW5ndGgYASABKA1IAIgBARIiChVtYXhfY29tcGxldGlvbl90b2tlbnMYAiABKA1IAYgBARIUCgxpc19tb2RlcmF0ZWQYAyABKAgSIAoTbWF4X3RoaW5raW5nX3Rva2VucxgEIAEoDUgCiAEBQhEKD19jb250ZXh0X2xlbmd0aEIYChZfbWF4X2NvbXBsZXRpb25fdG9rZW5zQhYKFF9tYXhfdGhpbmtpbmdfdG9rZW5zIk4KDU1vZGVsRW5kcG9pbnQSEAoIcHJvdmlkZXIYASABKAkSDQoFbW9kZWwYAiABKAkSDAoEZG93bhgDIAEoCBIOCgZzb3VyY2UYBCABKAkizgMKCk1vZGVsRW50cnkSCgoCaWQYASABKAkSFgoOY2Fub25pY2FsX3NsdWcYAiABKAkSDAoEbmFtZRgDIAEoCRIPCgdjcmVhdGVkGAQgASgDEhMKC2Rlc2NyaXB0aW9uGAUgASgJEhsKDmNvbnRleHRfbGVuZ3RoGAYgASgNSACIAQESLgoMYXJjaGl0ZWN0dXJlGAcgASgLMhgubGxtbGVhZi52MS5BcmNoaXRlY3R1cmUSKQoHcHJpY2luZxgIIAEoCzITLmxsbWxlYWYudjEuUHJpY2luZ0gBiAEBEi0KDHRvcF9wcm92aWRlchgJIAEoCzIXLmxsbWxlYWYudjEuVG9wUHJvdmlkZXISHAoUc3VwcG9ydGVkX3BhcmFtZXRlcnMYCiADKAkSHgoWdW5zdXBwb3J0ZWRfcGFyYW1ldGVycxgLIAMoCRIfChJkZWZhdWx0X3BhcmFtZXRlcnMYDCABKAlIAogBARIsCgllbmRwb2ludHMYDSADKAsyGS5sbG1sZWFmLnYxLk1vZGVsRW5kcG9pbnRCEQoPX2NvbnRleHRfbGVuZ3RoQgoKCF9wcmljaW5nQhUKE19kZWZhdWx0X3BhcmFtZXRlcnMiOgoSTGlzdE1vZGVsc1Jlc3BvbnNlEiQKBGRhdGEYASADKAsyFi5sbG1sZWFmLnYxLk1vZGVsRW50cnkiTAoQQmF0Y2hSZXF1ZXN0SXRlbRIRCgljdXN0b21faWQYASABKAkSJQoEYm9keRgCIAEoCzIXLmxsbWxlYWYudjEuQ2hhdFJlcXVlc3QiRAoSQmF0Y2hDcmVhdGVSZXF1ZXN0Ei4KCHJlcXVlc3RzGAEgAygLMhwubGxtbGVhZi52MS5CYXRjaFJlcXVlc3RJdGVtIncKC0JhdGNoQ291bnRzEg0KBXRvdGFsGAEgASgEEhIKCnByb2Nlc3NpbmcYAiABKAQSEQoJc3VjY2VlZGVkGAMgASgEEg8KB2Vycm9yZWQYBCABKAQSEAoIY2FuY2VsZWQYBSABKAQSDwoHZXhwaXJlZBgGIAEoBCKDAgoLQmF0Y2hIYW5kbGUSCgoCaWQYASABKAkSJwoGc3RhdHVzGAIgASgOMhcubGxtbGVhZi52MS5CYXRjaFN0YXR1cxInCgZjb3VudHMYAyABKAsyFy5sbG1sZWFmLnYxLkJhdGNoQ291bnRzEhcKCmNyZWF0ZWRfYXQYBCABKANIAIgBARIXCgpleHBpcmVzX2F0GAUgASgDSAGIAQESFQoIZW5kZWRfYXQYBiABKANIAogBARIVCghlbmRwb2ludBgHIAEoCUgDiAEBQg0KC19jcmVhdGVkX2F0Qg0KC19leHBpcmVzX2F0QgsKCV9lbmRlZF9hdEILCglfZW5kcG9pbnQimQEKD0JhdGNoUmVzdWx0TGluZRIRCgljdXN0b21faWQYASABKAkSMAoIcmVzcG9uc2UYAiABKAsyGS5sbG1sZWFmLnYxLkJhdGNoUmVzcG9uc2VIAIgBARIqCgVlcnJvchgDIAEoCzIWLmxsbWxlYWYudjEuQmF0Y2hFcnJvckgBiAEBQgsKCV9yZXNwb25zZUIICgZfZXJyb3IiTAoNQmF0Y2hSZXNwb25zZRITCgtzdGF0dXNfY29kZRgBIAEoDRImCgRib2R5GAIgASgLMhgubGxtbGVhZi52MS5DaGF0UmVzcG9uc2UiKwoKQmF0Y2hFcnJvchIMCgRjb2RlGAEgASgJEg8KB21lc3NhZ2UYAiABKAkqSwoEUm9sZRIUChBST0xFX1VOU1BFQ0lGSUVEEAASCgoGU1lTVEVNEAESCAoEVVNFUhACEg0KCUFTU0lTVEFOVBADEggKBFRPT0wQBCpnCgxGaW5pc2hSZWFzb24SHQoZRklOSVNIX1JFQVNPTl9VTlNQRUNJRklFRBAAEggKBFNUT1AQARIKCgZMRU5HVEgQAhIOCgpUT09MX0NBTExTEAMSEgoOQ09OVEVOVF9GSUxURVIQBCqhAQoLQmF0Y2hTdGF0dXMSHAoYQkFUQ0hfU1RBVFVTX1VOU1BFQ0lGSUVEEAASDgoKVkFMSURBVElORxABEg8KC0lOX1BST0dSRVNTEAISDgoKRklOQUxJWklORxADEg0KCUNPTVBMRVRFRBAEEgoKBkZBSUxFRBAFEgsKB0VYUElSRUQQBhINCglDQU5DRUxJTkcQBxIMCghDQU5DRUxFRBAIQlgKF2V1LmNvZGVmaW9ubi5sbG1sZWFmLnYxUAFaO2dpdGh1Yi5jb20vY29kZWZpb25uL2xsbWxlYWYvY2xpZW50cy9nby9sbG1sZWFmcGI7bGxtbGVhZnBiYgZwcm90bzM");
39
39
 
40
40
  /**
41
41
  * Token accounting echoed on every response. `cost_usd` is an llmleaf addition
@@ -953,6 +953,855 @@ export type ChatCompletionChunk = Message<"llmleaf.v1.ChatCompletionChunk"> & {
953
953
  export const ChatCompletionChunkSchema: GenMessage<ChatCompletionChunk> = /*@__PURE__*/
954
954
  messageDesc(file_llmleaf_v1_llmleaf, 25);
955
955
 
956
+ /**
957
+ * One item of the request `input` array or the response `output` array. The wire
958
+ * discriminator is `"type"` and selects which field is set:
959
+ * "message" -> message (also the shape of a role-keyed item with no type)
960
+ * "function_call" -> function_call
961
+ * "function_call_output" -> function_call_output
962
+ * "reasoning" -> reasoning
963
+ *
964
+ * @generated from message llmleaf.v1.ResponseItem
965
+ */
966
+ export type ResponseItem = Message<"llmleaf.v1.ResponseItem"> & {
967
+ /**
968
+ * @generated from oneof llmleaf.v1.ResponseItem.item
969
+ */
970
+ item: {
971
+ /**
972
+ * @generated from field: llmleaf.v1.ResponseMessageItem message = 1;
973
+ */
974
+ value: ResponseMessageItem;
975
+ case: "message";
976
+ } | {
977
+ /**
978
+ * @generated from field: llmleaf.v1.ResponseFunctionCallItem function_call = 2;
979
+ */
980
+ value: ResponseFunctionCallItem;
981
+ case: "functionCall";
982
+ } | {
983
+ /**
984
+ * @generated from field: llmleaf.v1.ResponseFunctionCallOutputItem function_call_output = 3;
985
+ */
986
+ value: ResponseFunctionCallOutputItem;
987
+ case: "functionCallOutput";
988
+ } | {
989
+ /**
990
+ * @generated from field: llmleaf.v1.ResponseReasoningItem reasoning = 4;
991
+ */
992
+ value: ResponseReasoningItem;
993
+ case: "reasoning";
994
+ } | { case: undefined; value?: undefined };
995
+ };
996
+
997
+ /**
998
+ * Describes the message llmleaf.v1.ResponseItem.
999
+ * Use `create(ResponseItemSchema)` to create a new message.
1000
+ */
1001
+ export const ResponseItemSchema: GenMessage<ResponseItem> = /*@__PURE__*/
1002
+ messageDesc(file_llmleaf_v1_llmleaf, 26);
1003
+
1004
+ /**
1005
+ * @generated from message llmleaf.v1.ResponseItemList
1006
+ */
1007
+ export type ResponseItemList = Message<"llmleaf.v1.ResponseItemList"> & {
1008
+ /**
1009
+ * @generated from field: repeated llmleaf.v1.ResponseItem items = 1;
1010
+ */
1011
+ items: ResponseItem[];
1012
+ };
1013
+
1014
+ /**
1015
+ * Describes the message llmleaf.v1.ResponseItemList.
1016
+ * Use `create(ResponseItemListSchema)` to create a new message.
1017
+ */
1018
+ export const ResponseItemListSchema: GenMessage<ResponseItemList> = /*@__PURE__*/
1019
+ messageDesc(file_llmleaf_v1_llmleaf, 27);
1020
+
1021
+ /**
1022
+ * A conversation message item. On input, `role` is "user" | "system" | "developer" |
1023
+ * "assistant" and `content` is a bare string or input parts; on output, role is
1024
+ * "assistant", content is output_text parts, and `status`/`id` are set.
1025
+ *
1026
+ * @generated from message llmleaf.v1.ResponseMessageItem
1027
+ */
1028
+ export type ResponseMessageItem = Message<"llmleaf.v1.ResponseMessageItem"> & {
1029
+ /**
1030
+ * @generated from field: optional string id = 1;
1031
+ */
1032
+ id?: string | undefined;
1033
+
1034
+ /**
1035
+ * @generated from field: string role = 2;
1036
+ */
1037
+ role: string;
1038
+
1039
+ /**
1040
+ * @generated from oneof llmleaf.v1.ResponseMessageItem.content
1041
+ */
1042
+ content: {
1043
+ /**
1044
+ * @generated from field: string text = 3;
1045
+ */
1046
+ value: string;
1047
+ case: "text";
1048
+ } | {
1049
+ /**
1050
+ * @generated from field: llmleaf.v1.ResponseContentParts parts = 4;
1051
+ */
1052
+ value: ResponseContentParts;
1053
+ case: "parts";
1054
+ } | { case: undefined; value?: undefined };
1055
+
1056
+ /**
1057
+ * output only: "in_progress" | "completed"
1058
+ *
1059
+ * @generated from field: optional string status = 5;
1060
+ */
1061
+ status?: string | undefined;
1062
+ };
1063
+
1064
+ /**
1065
+ * Describes the message llmleaf.v1.ResponseMessageItem.
1066
+ * Use `create(ResponseMessageItemSchema)` to create a new message.
1067
+ */
1068
+ export const ResponseMessageItemSchema: GenMessage<ResponseMessageItem> = /*@__PURE__*/
1069
+ messageDesc(file_llmleaf_v1_llmleaf, 28);
1070
+
1071
+ /**
1072
+ * One content part; the `"type"` wire token matches the set field's name:
1073
+ * {"type":"input_text","text":...}
1074
+ * {"type":"input_image","image_url":"<url>","detail":...} (image_url is a STRING here)
1075
+ * {"type":"output_text","text":...,"annotations":[]}
1076
+ *
1077
+ * @generated from message llmleaf.v1.ResponseContentPart
1078
+ */
1079
+ export type ResponseContentPart = Message<"llmleaf.v1.ResponseContentPart"> & {
1080
+ /**
1081
+ * @generated from oneof llmleaf.v1.ResponseContentPart.part
1082
+ */
1083
+ part: {
1084
+ /**
1085
+ * @generated from field: llmleaf.v1.ResponseTextPart input_text = 1;
1086
+ */
1087
+ value: ResponseTextPart;
1088
+ case: "inputText";
1089
+ } | {
1090
+ /**
1091
+ * @generated from field: llmleaf.v1.ResponseInputImagePart input_image = 2;
1092
+ */
1093
+ value: ResponseInputImagePart;
1094
+ case: "inputImage";
1095
+ } | {
1096
+ /**
1097
+ * @generated from field: llmleaf.v1.ResponseTextPart output_text = 3;
1098
+ */
1099
+ value: ResponseTextPart;
1100
+ case: "outputText";
1101
+ } | { case: undefined; value?: undefined };
1102
+ };
1103
+
1104
+ /**
1105
+ * Describes the message llmleaf.v1.ResponseContentPart.
1106
+ * Use `create(ResponseContentPartSchema)` to create a new message.
1107
+ */
1108
+ export const ResponseContentPartSchema: GenMessage<ResponseContentPart> = /*@__PURE__*/
1109
+ messageDesc(file_llmleaf_v1_llmleaf, 29);
1110
+
1111
+ /**
1112
+ * @generated from message llmleaf.v1.ResponseContentParts
1113
+ */
1114
+ export type ResponseContentParts = Message<"llmleaf.v1.ResponseContentParts"> & {
1115
+ /**
1116
+ * @generated from field: repeated llmleaf.v1.ResponseContentPart items = 1;
1117
+ */
1118
+ items: ResponseContentPart[];
1119
+ };
1120
+
1121
+ /**
1122
+ * Describes the message llmleaf.v1.ResponseContentParts.
1123
+ * Use `create(ResponseContentPartsSchema)` to create a new message.
1124
+ */
1125
+ export const ResponseContentPartsSchema: GenMessage<ResponseContentParts> = /*@__PURE__*/
1126
+ messageDesc(file_llmleaf_v1_llmleaf, 30);
1127
+
1128
+ /**
1129
+ * @generated from message llmleaf.v1.ResponseTextPart
1130
+ */
1131
+ export type ResponseTextPart = Message<"llmleaf.v1.ResponseTextPart"> & {
1132
+ /**
1133
+ * @generated from field: string text = 1;
1134
+ */
1135
+ text: string;
1136
+ };
1137
+
1138
+ /**
1139
+ * Describes the message llmleaf.v1.ResponseTextPart.
1140
+ * Use `create(ResponseTextPartSchema)` to create a new message.
1141
+ */
1142
+ export const ResponseTextPartSchema: GenMessage<ResponseTextPart> = /*@__PURE__*/
1143
+ messageDesc(file_llmleaf_v1_llmleaf, 31);
1144
+
1145
+ /**
1146
+ * @generated from message llmleaf.v1.ResponseInputImagePart
1147
+ */
1148
+ export type ResponseInputImagePart = Message<"llmleaf.v1.ResponseInputImagePart"> & {
1149
+ /**
1150
+ * plain string, NOT the chat dialect's nested object
1151
+ *
1152
+ * @generated from field: string image_url = 1;
1153
+ */
1154
+ imageUrl: string;
1155
+
1156
+ /**
1157
+ * "auto" | "low" | "high"
1158
+ *
1159
+ * @generated from field: optional string detail = 2;
1160
+ */
1161
+ detail?: string | undefined;
1162
+ };
1163
+
1164
+ /**
1165
+ * Describes the message llmleaf.v1.ResponseInputImagePart.
1166
+ * Use `create(ResponseInputImagePartSchema)` to create a new message.
1167
+ */
1168
+ export const ResponseInputImagePartSchema: GenMessage<ResponseInputImagePart> = /*@__PURE__*/
1169
+ messageDesc(file_llmleaf_v1_llmleaf, 32);
1170
+
1171
+ /**
1172
+ * A function call the model made. `call_id` pairs it with its function_call_output;
1173
+ * `arguments` is the raw JSON string exactly as emitted.
1174
+ *
1175
+ * @generated from message llmleaf.v1.ResponseFunctionCallItem
1176
+ */
1177
+ export type ResponseFunctionCallItem = Message<"llmleaf.v1.ResponseFunctionCallItem"> & {
1178
+ /**
1179
+ * @generated from field: optional string id = 1;
1180
+ */
1181
+ id?: string | undefined;
1182
+
1183
+ /**
1184
+ * @generated from field: string call_id = 2;
1185
+ */
1186
+ callId: string;
1187
+
1188
+ /**
1189
+ * @generated from field: string name = 3;
1190
+ */
1191
+ name: string;
1192
+
1193
+ /**
1194
+ * @generated from field: string arguments = 4;
1195
+ */
1196
+ arguments: string;
1197
+
1198
+ /**
1199
+ * @generated from field: optional string status = 5;
1200
+ */
1201
+ status?: string | undefined;
1202
+ };
1203
+
1204
+ /**
1205
+ * Describes the message llmleaf.v1.ResponseFunctionCallItem.
1206
+ * Use `create(ResponseFunctionCallItemSchema)` to create a new message.
1207
+ */
1208
+ export const ResponseFunctionCallItemSchema: GenMessage<ResponseFunctionCallItem> = /*@__PURE__*/
1209
+ messageDesc(file_llmleaf_v1_llmleaf, 33);
1210
+
1211
+ /**
1212
+ * The caller's answer to a function call, replayed on the next turn.
1213
+ *
1214
+ * @generated from message llmleaf.v1.ResponseFunctionCallOutputItem
1215
+ */
1216
+ export type ResponseFunctionCallOutputItem = Message<"llmleaf.v1.ResponseFunctionCallOutputItem"> & {
1217
+ /**
1218
+ * @generated from field: optional string id = 1;
1219
+ */
1220
+ id?: string | undefined;
1221
+
1222
+ /**
1223
+ * @generated from field: string call_id = 2;
1224
+ */
1225
+ callId: string;
1226
+
1227
+ /**
1228
+ * @generated from field: string output = 3;
1229
+ */
1230
+ output: string;
1231
+ };
1232
+
1233
+ /**
1234
+ * Describes the message llmleaf.v1.ResponseFunctionCallOutputItem.
1235
+ * Use `create(ResponseFunctionCallOutputItemSchema)` to create a new message.
1236
+ */
1237
+ export const ResponseFunctionCallOutputItemSchema: GenMessage<ResponseFunctionCallOutputItem> = /*@__PURE__*/
1238
+ messageDesc(file_llmleaf_v1_llmleaf, 34);
1239
+
1240
+ /**
1241
+ * A reasoning ("thinking") item. `summary` entries are {"type":"summary_text","text"},
1242
+ * `content` entries are {"type":"reasoning_text","text"} — the entry's list decides its
1243
+ * wire `type` token. `encrypted_content` is opaque and MUST be echoed back verbatim in
1244
+ * the next request's input to continue an encrypted reasoning turn (llmleaf requests it
1245
+ * from Responses-speaking upstreams so multi-turn reasoning survives statelessly).
1246
+ *
1247
+ * @generated from message llmleaf.v1.ResponseReasoningItem
1248
+ */
1249
+ export type ResponseReasoningItem = Message<"llmleaf.v1.ResponseReasoningItem"> & {
1250
+ /**
1251
+ * @generated from field: optional string id = 1;
1252
+ */
1253
+ id?: string | undefined;
1254
+
1255
+ /**
1256
+ * @generated from field: repeated llmleaf.v1.ResponseReasoningText summary = 2;
1257
+ */
1258
+ summary: ResponseReasoningText[];
1259
+
1260
+ /**
1261
+ * @generated from field: repeated llmleaf.v1.ResponseReasoningText content = 3;
1262
+ */
1263
+ content: ResponseReasoningText[];
1264
+
1265
+ /**
1266
+ * @generated from field: optional string encrypted_content = 4;
1267
+ */
1268
+ encryptedContent?: string | undefined;
1269
+ };
1270
+
1271
+ /**
1272
+ * Describes the message llmleaf.v1.ResponseReasoningItem.
1273
+ * Use `create(ResponseReasoningItemSchema)` to create a new message.
1274
+ */
1275
+ export const ResponseReasoningItemSchema: GenMessage<ResponseReasoningItem> = /*@__PURE__*/
1276
+ messageDesc(file_llmleaf_v1_llmleaf, 35);
1277
+
1278
+ /**
1279
+ * @generated from message llmleaf.v1.ResponseReasoningText
1280
+ */
1281
+ export type ResponseReasoningText = Message<"llmleaf.v1.ResponseReasoningText"> & {
1282
+ /**
1283
+ * @generated from field: string text = 1;
1284
+ */
1285
+ text: string;
1286
+ };
1287
+
1288
+ /**
1289
+ * Describes the message llmleaf.v1.ResponseReasoningText.
1290
+ * Use `create(ResponseReasoningTextSchema)` to create a new message.
1291
+ */
1292
+ export const ResponseReasoningTextSchema: GenMessage<ResponseReasoningText> = /*@__PURE__*/
1293
+ messageDesc(file_llmleaf_v1_llmleaf, 36);
1294
+
1295
+ /**
1296
+ * A tool the model MAY call — FLAT in this dialect (`type`/`name`/`parameters` at the
1297
+ * top level, no nested `function` object). `parameters` is a raw JSON Schema string.
1298
+ *
1299
+ * @generated from message llmleaf.v1.ResponsesToolDef
1300
+ */
1301
+ export type ResponsesToolDef = Message<"llmleaf.v1.ResponsesToolDef"> & {
1302
+ /**
1303
+ * "function"
1304
+ *
1305
+ * @generated from field: string type = 1;
1306
+ */
1307
+ type: string;
1308
+
1309
+ /**
1310
+ * @generated from field: string name = 2;
1311
+ */
1312
+ name: string;
1313
+
1314
+ /**
1315
+ * @generated from field: optional string description = 3;
1316
+ */
1317
+ description?: string | undefined;
1318
+
1319
+ /**
1320
+ * raw JSON object
1321
+ *
1322
+ * @generated from field: optional string parameters = 4;
1323
+ */
1324
+ parameters?: string | undefined;
1325
+
1326
+ /**
1327
+ * defaults TRUE upstream; llmleaf's own edge pins false
1328
+ *
1329
+ * @generated from field: optional bool strict = 5;
1330
+ */
1331
+ strict?: boolean | undefined;
1332
+ };
1333
+
1334
+ /**
1335
+ * Describes the message llmleaf.v1.ResponsesToolDef.
1336
+ * Use `create(ResponsesToolDefSchema)` to create a new message.
1337
+ */
1338
+ export const ResponsesToolDefSchema: GenMessage<ResponsesToolDef> = /*@__PURE__*/
1339
+ messageDesc(file_llmleaf_v1_llmleaf, 37);
1340
+
1341
+ /**
1342
+ * tool_choice: a mode string ("auto"|"none"|"required") or the FLAT named object
1343
+ * {"type":"function","name":"..."} (no nested `function`, unlike the chat dialect).
1344
+ *
1345
+ * @generated from message llmleaf.v1.ResponsesToolChoice
1346
+ */
1347
+ export type ResponsesToolChoice = Message<"llmleaf.v1.ResponsesToolChoice"> & {
1348
+ /**
1349
+ * @generated from oneof llmleaf.v1.ResponsesToolChoice.choice
1350
+ */
1351
+ choice: {
1352
+ /**
1353
+ * @generated from field: string mode = 1;
1354
+ */
1355
+ value: string;
1356
+ case: "mode";
1357
+ } | {
1358
+ /**
1359
+ * @generated from field: llmleaf.v1.ResponsesNamedToolChoice named = 2;
1360
+ */
1361
+ value: ResponsesNamedToolChoice;
1362
+ case: "named";
1363
+ } | { case: undefined; value?: undefined };
1364
+ };
1365
+
1366
+ /**
1367
+ * Describes the message llmleaf.v1.ResponsesToolChoice.
1368
+ * Use `create(ResponsesToolChoiceSchema)` to create a new message.
1369
+ */
1370
+ export const ResponsesToolChoiceSchema: GenMessage<ResponsesToolChoice> = /*@__PURE__*/
1371
+ messageDesc(file_llmleaf_v1_llmleaf, 38);
1372
+
1373
+ /**
1374
+ * @generated from message llmleaf.v1.ResponsesNamedToolChoice
1375
+ */
1376
+ export type ResponsesNamedToolChoice = Message<"llmleaf.v1.ResponsesNamedToolChoice"> & {
1377
+ /**
1378
+ * "function"
1379
+ *
1380
+ * @generated from field: string type = 1;
1381
+ */
1382
+ type: string;
1383
+
1384
+ /**
1385
+ * @generated from field: string name = 2;
1386
+ */
1387
+ name: string;
1388
+ };
1389
+
1390
+ /**
1391
+ * Describes the message llmleaf.v1.ResponsesNamedToolChoice.
1392
+ * Use `create(ResponsesNamedToolChoiceSchema)` to create a new message.
1393
+ */
1394
+ export const ResponsesNamedToolChoiceSchema: GenMessage<ResponsesNamedToolChoice> = /*@__PURE__*/
1395
+ messageDesc(file_llmleaf_v1_llmleaf, 39);
1396
+
1397
+ /**
1398
+ * reasoning: {"effort":"minimal"|"low"|"medium"|"high"|..., "summary":...}
1399
+ *
1400
+ * @generated from message llmleaf.v1.ResponsesReasoning
1401
+ */
1402
+ export type ResponsesReasoning = Message<"llmleaf.v1.ResponsesReasoning"> & {
1403
+ /**
1404
+ * @generated from field: optional string effort = 1;
1405
+ */
1406
+ effort?: string | undefined;
1407
+
1408
+ /**
1409
+ * @generated from field: optional string summary = 2;
1410
+ */
1411
+ summary?: string | undefined;
1412
+ };
1413
+
1414
+ /**
1415
+ * Describes the message llmleaf.v1.ResponsesReasoning.
1416
+ * Use `create(ResponsesReasoningSchema)` to create a new message.
1417
+ */
1418
+ export const ResponsesReasoningSchema: GenMessage<ResponsesReasoning> = /*@__PURE__*/
1419
+ messageDesc(file_llmleaf_v1_llmleaf, 40);
1420
+
1421
+ /**
1422
+ * @generated from message llmleaf.v1.ResponsesRequest
1423
+ */
1424
+ export type ResponsesRequest = Message<"llmleaf.v1.ResponsesRequest"> & {
1425
+ /**
1426
+ * @generated from field: string model = 1;
1427
+ */
1428
+ model: string;
1429
+
1430
+ /**
1431
+ * Wire `input` is either a bare string (one user message) or an array of items.
1432
+ *
1433
+ * @generated from oneof llmleaf.v1.ResponsesRequest.input
1434
+ */
1435
+ input: {
1436
+ /**
1437
+ * @generated from field: string text = 2;
1438
+ */
1439
+ value: string;
1440
+ case: "text";
1441
+ } | {
1442
+ /**
1443
+ * @generated from field: llmleaf.v1.ResponseItemList items = 3;
1444
+ */
1445
+ value: ResponseItemList;
1446
+ case: "items";
1447
+ } | { case: undefined; value?: undefined };
1448
+
1449
+ /**
1450
+ * becomes a leading system message
1451
+ *
1452
+ * @generated from field: optional string instructions = 4;
1453
+ */
1454
+ instructions?: string | undefined;
1455
+
1456
+ /**
1457
+ * @generated from field: optional bool stream = 5;
1458
+ */
1459
+ stream?: boolean | undefined;
1460
+
1461
+ /**
1462
+ * @generated from field: optional float temperature = 6;
1463
+ */
1464
+ temperature?: number | undefined;
1465
+
1466
+ /**
1467
+ * @generated from field: optional float top_p = 7;
1468
+ */
1469
+ topP?: number | undefined;
1470
+
1471
+ /**
1472
+ * @generated from field: optional uint32 max_output_tokens = 8;
1473
+ */
1474
+ maxOutputTokens?: number | undefined;
1475
+
1476
+ /**
1477
+ * @generated from field: repeated llmleaf.v1.ResponsesToolDef tools = 9;
1478
+ */
1479
+ tools: ResponsesToolDef[];
1480
+
1481
+ /**
1482
+ * @generated from field: optional llmleaf.v1.ResponsesToolChoice tool_choice = 10;
1483
+ */
1484
+ toolChoice?: ResponsesToolChoice | undefined;
1485
+
1486
+ /**
1487
+ * @generated from field: optional llmleaf.v1.ResponsesReasoning reasoning = 11;
1488
+ */
1489
+ reasoning?: ResponsesReasoning | undefined;
1490
+
1491
+ /**
1492
+ * Accepted but always answered `false` — llmleaf stores nothing.
1493
+ *
1494
+ * @generated from field: optional bool store = 12;
1495
+ */
1496
+ store?: boolean | undefined;
1497
+
1498
+ /**
1499
+ * Dialect-specific passthrough, spliced verbatim into the request body (P7).
1500
+ *
1501
+ * raw JSON object
1502
+ *
1503
+ * @generated from field: optional string extra = 13;
1504
+ */
1505
+ extra?: string | undefined;
1506
+ };
1507
+
1508
+ /**
1509
+ * Describes the message llmleaf.v1.ResponsesRequest.
1510
+ * Use `create(ResponsesRequestSchema)` to create a new message.
1511
+ */
1512
+ export const ResponsesRequestSchema: GenMessage<ResponsesRequest> = /*@__PURE__*/
1513
+ messageDesc(file_llmleaf_v1_llmleaf, 41);
1514
+
1515
+ /**
1516
+ * Token accounting in the Responses dialect's own names (`input_tokens`/`output_tokens`,
1517
+ * not the chat dialect's `prompt_tokens`/`completion_tokens`).
1518
+ *
1519
+ * @generated from message llmleaf.v1.ResponsesUsage
1520
+ */
1521
+ export type ResponsesUsage = Message<"llmleaf.v1.ResponsesUsage"> & {
1522
+ /**
1523
+ * @generated from field: uint32 input_tokens = 1;
1524
+ */
1525
+ inputTokens: number;
1526
+
1527
+ /**
1528
+ * @generated from field: optional llmleaf.v1.ResponsesInputTokensDetails input_tokens_details = 2;
1529
+ */
1530
+ inputTokensDetails?: ResponsesInputTokensDetails | undefined;
1531
+
1532
+ /**
1533
+ * @generated from field: uint32 output_tokens = 3;
1534
+ */
1535
+ outputTokens: number;
1536
+
1537
+ /**
1538
+ * @generated from field: optional llmleaf.v1.ResponsesOutputTokensDetails output_tokens_details = 4;
1539
+ */
1540
+ outputTokensDetails?: ResponsesOutputTokensDetails | undefined;
1541
+
1542
+ /**
1543
+ * @generated from field: uint32 total_tokens = 5;
1544
+ */
1545
+ totalTokens: number;
1546
+ };
1547
+
1548
+ /**
1549
+ * Describes the message llmleaf.v1.ResponsesUsage.
1550
+ * Use `create(ResponsesUsageSchema)` to create a new message.
1551
+ */
1552
+ export const ResponsesUsageSchema: GenMessage<ResponsesUsage> = /*@__PURE__*/
1553
+ messageDesc(file_llmleaf_v1_llmleaf, 42);
1554
+
1555
+ /**
1556
+ * @generated from message llmleaf.v1.ResponsesInputTokensDetails
1557
+ */
1558
+ export type ResponsesInputTokensDetails = Message<"llmleaf.v1.ResponsesInputTokensDetails"> & {
1559
+ /**
1560
+ * @generated from field: optional uint32 cached_tokens = 1;
1561
+ */
1562
+ cachedTokens?: number | undefined;
1563
+ };
1564
+
1565
+ /**
1566
+ * Describes the message llmleaf.v1.ResponsesInputTokensDetails.
1567
+ * Use `create(ResponsesInputTokensDetailsSchema)` to create a new message.
1568
+ */
1569
+ export const ResponsesInputTokensDetailsSchema: GenMessage<ResponsesInputTokensDetails> = /*@__PURE__*/
1570
+ messageDesc(file_llmleaf_v1_llmleaf, 43);
1571
+
1572
+ /**
1573
+ * @generated from message llmleaf.v1.ResponsesOutputTokensDetails
1574
+ */
1575
+ export type ResponsesOutputTokensDetails = Message<"llmleaf.v1.ResponsesOutputTokensDetails"> & {
1576
+ /**
1577
+ * @generated from field: optional uint32 reasoning_tokens = 1;
1578
+ */
1579
+ reasoningTokens?: number | undefined;
1580
+ };
1581
+
1582
+ /**
1583
+ * Describes the message llmleaf.v1.ResponsesOutputTokensDetails.
1584
+ * Use `create(ResponsesOutputTokensDetailsSchema)` to create a new message.
1585
+ */
1586
+ export const ResponsesOutputTokensDetailsSchema: GenMessage<ResponsesOutputTokensDetails> = /*@__PURE__*/
1587
+ messageDesc(file_llmleaf_v1_llmleaf, 44);
1588
+
1589
+ /**
1590
+ * status "incomplete" refinement: "max_output_tokens" | "content_filter".
1591
+ *
1592
+ * @generated from message llmleaf.v1.ResponsesIncompleteDetails
1593
+ */
1594
+ export type ResponsesIncompleteDetails = Message<"llmleaf.v1.ResponsesIncompleteDetails"> & {
1595
+ /**
1596
+ * @generated from field: string reason = 1;
1597
+ */
1598
+ reason: string;
1599
+ };
1600
+
1601
+ /**
1602
+ * Describes the message llmleaf.v1.ResponsesIncompleteDetails.
1603
+ * Use `create(ResponsesIncompleteDetailsSchema)` to create a new message.
1604
+ */
1605
+ export const ResponsesIncompleteDetailsSchema: GenMessage<ResponsesIncompleteDetails> = /*@__PURE__*/
1606
+ messageDesc(file_llmleaf_v1_llmleaf, 45);
1607
+
1608
+ /**
1609
+ * The response object (`"object":"response"`), also the snapshot carried by the
1610
+ * `response.created` / `response.in_progress` / `response.completed` stream events.
1611
+ * Fields the wire echoes but SDKs don't need typed (tools, tool_choice, truncation,
1612
+ * parallel_tool_calls, …) are simply ignored on decode — JSON tolerates unknown keys.
1613
+ *
1614
+ * @generated from message llmleaf.v1.ResponsesResponse
1615
+ */
1616
+ export type ResponsesResponse = Message<"llmleaf.v1.ResponsesResponse"> & {
1617
+ /**
1618
+ * @generated from field: string id = 1;
1619
+ */
1620
+ id: string;
1621
+
1622
+ /**
1623
+ * "response"
1624
+ *
1625
+ * @generated from field: string object = 2;
1626
+ */
1627
+ object: string;
1628
+
1629
+ /**
1630
+ * unix seconds
1631
+ *
1632
+ * @generated from field: int64 created_at = 3;
1633
+ */
1634
+ createdAt: bigint;
1635
+
1636
+ /**
1637
+ * "completed" | "in_progress" | "incomplete" | "failed"
1638
+ *
1639
+ * @generated from field: string status = 4;
1640
+ */
1641
+ status: string;
1642
+
1643
+ /**
1644
+ * @generated from field: optional llmleaf.v1.ResponsesIncompleteDetails incomplete_details = 5;
1645
+ */
1646
+ incompleteDetails?: ResponsesIncompleteDetails | undefined;
1647
+
1648
+ /**
1649
+ * @generated from field: optional llmleaf.v1.ErrorBody error = 6;
1650
+ */
1651
+ error?: ErrorBody | undefined;
1652
+
1653
+ /**
1654
+ * @generated from field: string model = 7;
1655
+ */
1656
+ model: string;
1657
+
1658
+ /**
1659
+ * @generated from field: repeated llmleaf.v1.ResponseItem output = 8;
1660
+ */
1661
+ output: ResponseItem[];
1662
+
1663
+ /**
1664
+ * null on in-flight snapshots
1665
+ *
1666
+ * @generated from field: optional llmleaf.v1.ResponsesUsage usage = 9;
1667
+ */
1668
+ usage?: ResponsesUsage | undefined;
1669
+
1670
+ /**
1671
+ * llmleaf always answers false
1672
+ *
1673
+ * @generated from field: optional bool store = 10;
1674
+ */
1675
+ store?: boolean | undefined;
1676
+
1677
+ /**
1678
+ * @generated from field: optional string instructions = 11;
1679
+ */
1680
+ instructions?: string | undefined;
1681
+
1682
+ /**
1683
+ * @generated from field: optional uint32 max_output_tokens = 12;
1684
+ */
1685
+ maxOutputTokens?: number | undefined;
1686
+
1687
+ /**
1688
+ * @generated from field: optional float temperature = 13;
1689
+ */
1690
+ temperature?: number | undefined;
1691
+
1692
+ /**
1693
+ * @generated from field: optional float top_p = 14;
1694
+ */
1695
+ topP?: number | undefined;
1696
+
1697
+ /**
1698
+ * @generated from field: optional llmleaf.v1.ResponsesReasoning reasoning = 15;
1699
+ */
1700
+ reasoning?: ResponsesReasoning | undefined;
1701
+ };
1702
+
1703
+ /**
1704
+ * Describes the message llmleaf.v1.ResponsesResponse.
1705
+ * Use `create(ResponsesResponseSchema)` to create a new message.
1706
+ */
1707
+ export const ResponsesResponseSchema: GenMessage<ResponsesResponse> = /*@__PURE__*/
1708
+ messageDesc(file_llmleaf_v1_llmleaf, 46);
1709
+
1710
+ /**
1711
+ * One streaming SSE event. Unlike chat streaming there is NO `data: [DONE]` sentinel:
1712
+ * each frame is `event: <type>` + `data: <json>` where the JSON is self-describing via
1713
+ * `type`, and the stream ends after the terminal `response.completed` /
1714
+ * `response.incomplete` / `response.failed` event. This is a flat superset of every
1715
+ * event's fields — `type` says which ones are meaningful; SDKs MUST ignore event types
1716
+ * they don't recognise (the dialect grows by adding types).
1717
+ *
1718
+ * @generated from message llmleaf.v1.ResponsesStreamEvent
1719
+ */
1720
+ export type ResponsesStreamEvent = Message<"llmleaf.v1.ResponsesStreamEvent"> & {
1721
+ /**
1722
+ * "response.created", "response.output_text.delta", ...
1723
+ *
1724
+ * @generated from field: string type = 1;
1725
+ */
1726
+ type: string;
1727
+
1728
+ /**
1729
+ * @generated from field: uint64 sequence_number = 2;
1730
+ */
1731
+ sequenceNumber: bigint;
1732
+
1733
+ /**
1734
+ * response.created/in_progress/completed/incomplete/failed
1735
+ *
1736
+ * @generated from field: optional llmleaf.v1.ResponsesResponse response = 3;
1737
+ */
1738
+ response?: ResponsesResponse | undefined;
1739
+
1740
+ /**
1741
+ * @generated from field: optional uint32 output_index = 4;
1742
+ */
1743
+ outputIndex?: number | undefined;
1744
+
1745
+ /**
1746
+ * @generated from field: optional string item_id = 5;
1747
+ */
1748
+ itemId?: string | undefined;
1749
+
1750
+ /**
1751
+ * @generated from field: optional uint32 content_index = 6;
1752
+ */
1753
+ contentIndex?: number | undefined;
1754
+
1755
+ /**
1756
+ * response.output_item.added/done
1757
+ *
1758
+ * @generated from field: optional llmleaf.v1.ResponseItem item = 7;
1759
+ */
1760
+ item?: ResponseItem | undefined;
1761
+
1762
+ /**
1763
+ * response.content_part.added/done
1764
+ *
1765
+ * @generated from field: optional llmleaf.v1.ResponseContentPart part = 8;
1766
+ */
1767
+ part?: ResponseContentPart | undefined;
1768
+
1769
+ /**
1770
+ * *.delta events (text / reasoning / arguments)
1771
+ *
1772
+ * @generated from field: optional string delta = 9;
1773
+ */
1774
+ delta?: string | undefined;
1775
+
1776
+ /**
1777
+ * response.output_text.done / reasoning_text.done
1778
+ *
1779
+ * @generated from field: optional string text = 10;
1780
+ */
1781
+ text?: string | undefined;
1782
+
1783
+ /**
1784
+ * response.function_call_arguments.done
1785
+ *
1786
+ * @generated from field: optional string arguments = 11;
1787
+ */
1788
+ arguments?: string | undefined;
1789
+
1790
+ /**
1791
+ * "error" event
1792
+ *
1793
+ * @generated from field: optional string message = 12;
1794
+ */
1795
+ message?: string | undefined;
1796
+ };
1797
+
1798
+ /**
1799
+ * Describes the message llmleaf.v1.ResponsesStreamEvent.
1800
+ * Use `create(ResponsesStreamEventSchema)` to create a new message.
1801
+ */
1802
+ export const ResponsesStreamEventSchema: GenMessage<ResponsesStreamEvent> = /*@__PURE__*/
1803
+ messageDesc(file_llmleaf_v1_llmleaf, 47);
1804
+
956
1805
  /**
957
1806
  * @generated from message llmleaf.v1.EmbeddingRequest
958
1807
  */
@@ -994,7 +1843,7 @@ export type EmbeddingRequest = Message<"llmleaf.v1.EmbeddingRequest"> & {
994
1843
  * Use `create(EmbeddingRequestSchema)` to create a new message.
995
1844
  */
996
1845
  export const EmbeddingRequestSchema: GenMessage<EmbeddingRequest> = /*@__PURE__*/
997
- messageDesc(file_llmleaf_v1_llmleaf, 26);
1846
+ messageDesc(file_llmleaf_v1_llmleaf, 48);
998
1847
 
999
1848
  /**
1000
1849
  * @generated from message llmleaf.v1.Embedding
@@ -1025,7 +1874,7 @@ export type Embedding = Message<"llmleaf.v1.Embedding"> & {
1025
1874
  * Use `create(EmbeddingSchema)` to create a new message.
1026
1875
  */
1027
1876
  export const EmbeddingSchema: GenMessage<Embedding> = /*@__PURE__*/
1028
- messageDesc(file_llmleaf_v1_llmleaf, 27);
1877
+ messageDesc(file_llmleaf_v1_llmleaf, 49);
1029
1878
 
1030
1879
  /**
1031
1880
  * @generated from message llmleaf.v1.EmbeddingResponse
@@ -1059,7 +1908,7 @@ export type EmbeddingResponse = Message<"llmleaf.v1.EmbeddingResponse"> & {
1059
1908
  * Use `create(EmbeddingResponseSchema)` to create a new message.
1060
1909
  */
1061
1910
  export const EmbeddingResponseSchema: GenMessage<EmbeddingResponse> = /*@__PURE__*/
1062
- messageDesc(file_llmleaf_v1_llmleaf, 28);
1911
+ messageDesc(file_llmleaf_v1_llmleaf, 50);
1063
1912
 
1064
1913
  /**
1065
1914
  * @generated from message llmleaf.v1.SpeechRequest
@@ -1105,7 +1954,7 @@ export type SpeechRequest = Message<"llmleaf.v1.SpeechRequest"> & {
1105
1954
  * Use `create(SpeechRequestSchema)` to create a new message.
1106
1955
  */
1107
1956
  export const SpeechRequestSchema: GenMessage<SpeechRequest> = /*@__PURE__*/
1108
- messageDesc(file_llmleaf_v1_llmleaf, 29);
1957
+ messageDesc(file_llmleaf_v1_llmleaf, 51);
1109
1958
 
1110
1959
  /**
1111
1960
  * @generated from message llmleaf.v1.Voice
@@ -1136,7 +1985,7 @@ export type Voice = Message<"llmleaf.v1.Voice"> & {
1136
1985
  * Use `create(VoiceSchema)` to create a new message.
1137
1986
  */
1138
1987
  export const VoiceSchema: GenMessage<Voice> = /*@__PURE__*/
1139
- messageDesc(file_llmleaf_v1_llmleaf, 30);
1988
+ messageDesc(file_llmleaf_v1_llmleaf, 52);
1140
1989
 
1141
1990
  /**
1142
1991
  * @generated from message llmleaf.v1.VoicesResponse
@@ -1158,7 +2007,7 @@ export type VoicesResponse = Message<"llmleaf.v1.VoicesResponse"> & {
1158
2007
  * Use `create(VoicesResponseSchema)` to create a new message.
1159
2008
  */
1160
2009
  export const VoicesResponseSchema: GenMessage<VoicesResponse> = /*@__PURE__*/
1161
- messageDesc(file_llmleaf_v1_llmleaf, 31);
2010
+ messageDesc(file_llmleaf_v1_llmleaf, 53);
1162
2011
 
1163
2012
  /**
1164
2013
  * The audio file itself is sent as the multipart `file` part, NOT in this message;
@@ -1204,7 +2053,7 @@ export type TranscriptionRequest = Message<"llmleaf.v1.TranscriptionRequest"> &
1204
2053
  * Use `create(TranscriptionRequestSchema)` to create a new message.
1205
2054
  */
1206
2055
  export const TranscriptionRequestSchema: GenMessage<TranscriptionRequest> = /*@__PURE__*/
1207
- messageDesc(file_llmleaf_v1_llmleaf, 32);
2056
+ messageDesc(file_llmleaf_v1_llmleaf, 54);
1208
2057
 
1209
2058
  /**
1210
2059
  * For response_format json/verbose_json. text/srt/vtt return a plain-text body.
@@ -1245,7 +2094,7 @@ export type TranscriptionResponse = Message<"llmleaf.v1.TranscriptionResponse">
1245
2094
  * Use `create(TranscriptionResponseSchema)` to create a new message.
1246
2095
  */
1247
2096
  export const TranscriptionResponseSchema: GenMessage<TranscriptionResponse> = /*@__PURE__*/
1248
- messageDesc(file_llmleaf_v1_llmleaf, 33);
2097
+ messageDesc(file_llmleaf_v1_llmleaf, 55);
1249
2098
 
1250
2099
  /**
1251
2100
  * @generated from message llmleaf.v1.Architecture
@@ -1284,7 +2133,7 @@ export type Architecture = Message<"llmleaf.v1.Architecture"> & {
1284
2133
  * Use `create(ArchitectureSchema)` to create a new message.
1285
2134
  */
1286
2135
  export const ArchitectureSchema: GenMessage<Architecture> = /*@__PURE__*/
1287
- messageDesc(file_llmleaf_v1_llmleaf, 34);
2136
+ messageDesc(file_llmleaf_v1_llmleaf, 56);
1288
2137
 
1289
2138
  /**
1290
2139
  * @generated from message llmleaf.v1.Pricing
@@ -1308,7 +2157,7 @@ export type Pricing = Message<"llmleaf.v1.Pricing"> & {
1308
2157
  * Use `create(PricingSchema)` to create a new message.
1309
2158
  */
1310
2159
  export const PricingSchema: GenMessage<Pricing> = /*@__PURE__*/
1311
- messageDesc(file_llmleaf_v1_llmleaf, 35);
2160
+ messageDesc(file_llmleaf_v1_llmleaf, 57);
1312
2161
 
1313
2162
  /**
1314
2163
  * @generated from message llmleaf.v1.TopProvider
@@ -1342,7 +2191,7 @@ export type TopProvider = Message<"llmleaf.v1.TopProvider"> & {
1342
2191
  * Use `create(TopProviderSchema)` to create a new message.
1343
2192
  */
1344
2193
  export const TopProviderSchema: GenMessage<TopProvider> = /*@__PURE__*/
1345
- messageDesc(file_llmleaf_v1_llmleaf, 36);
2194
+ messageDesc(file_llmleaf_v1_llmleaf, 58);
1346
2195
 
1347
2196
  /**
1348
2197
  * Admin-only fallback-chain entry (present only with a valid x-admin-token).
@@ -1378,7 +2227,7 @@ export type ModelEndpoint = Message<"llmleaf.v1.ModelEndpoint"> & {
1378
2227
  * Use `create(ModelEndpointSchema)` to create a new message.
1379
2228
  */
1380
2229
  export const ModelEndpointSchema: GenMessage<ModelEndpoint> = /*@__PURE__*/
1381
- messageDesc(file_llmleaf_v1_llmleaf, 37);
2230
+ messageDesc(file_llmleaf_v1_llmleaf, 59);
1382
2231
 
1383
2232
  /**
1384
2233
  * @generated from message llmleaf.v1.ModelEntry
@@ -1459,7 +2308,7 @@ export type ModelEntry = Message<"llmleaf.v1.ModelEntry"> & {
1459
2308
  * Use `create(ModelEntrySchema)` to create a new message.
1460
2309
  */
1461
2310
  export const ModelEntrySchema: GenMessage<ModelEntry> = /*@__PURE__*/
1462
- messageDesc(file_llmleaf_v1_llmleaf, 38);
2311
+ messageDesc(file_llmleaf_v1_llmleaf, 60);
1463
2312
 
1464
2313
  /**
1465
2314
  * @generated from message llmleaf.v1.ListModelsResponse
@@ -1476,7 +2325,7 @@ export type ListModelsResponse = Message<"llmleaf.v1.ListModelsResponse"> & {
1476
2325
  * Use `create(ListModelsResponseSchema)` to create a new message.
1477
2326
  */
1478
2327
  export const ListModelsResponseSchema: GenMessage<ListModelsResponse> = /*@__PURE__*/
1479
- messageDesc(file_llmleaf_v1_llmleaf, 39);
2328
+ messageDesc(file_llmleaf_v1_llmleaf, 61);
1480
2329
 
1481
2330
  /**
1482
2331
  * @generated from message llmleaf.v1.BatchRequestItem
@@ -1498,7 +2347,7 @@ export type BatchRequestItem = Message<"llmleaf.v1.BatchRequestItem"> & {
1498
2347
  * Use `create(BatchRequestItemSchema)` to create a new message.
1499
2348
  */
1500
2349
  export const BatchRequestItemSchema: GenMessage<BatchRequestItem> = /*@__PURE__*/
1501
- messageDesc(file_llmleaf_v1_llmleaf, 40);
2350
+ messageDesc(file_llmleaf_v1_llmleaf, 62);
1502
2351
 
1503
2352
  /**
1504
2353
  * @generated from message llmleaf.v1.BatchCreateRequest
@@ -1515,7 +2364,7 @@ export type BatchCreateRequest = Message<"llmleaf.v1.BatchCreateRequest"> & {
1515
2364
  * Use `create(BatchCreateRequestSchema)` to create a new message.
1516
2365
  */
1517
2366
  export const BatchCreateRequestSchema: GenMessage<BatchCreateRequest> = /*@__PURE__*/
1518
- messageDesc(file_llmleaf_v1_llmleaf, 41);
2367
+ messageDesc(file_llmleaf_v1_llmleaf, 63);
1519
2368
 
1520
2369
  /**
1521
2370
  * @generated from message llmleaf.v1.BatchCounts
@@ -1557,7 +2406,7 @@ export type BatchCounts = Message<"llmleaf.v1.BatchCounts"> & {
1557
2406
  * Use `create(BatchCountsSchema)` to create a new message.
1558
2407
  */
1559
2408
  export const BatchCountsSchema: GenMessage<BatchCounts> = /*@__PURE__*/
1560
- messageDesc(file_llmleaf_v1_llmleaf, 42);
2409
+ messageDesc(file_llmleaf_v1_llmleaf, 64);
1561
2410
 
1562
2411
  /**
1563
2412
  * @generated from message llmleaf.v1.BatchHandle
@@ -1606,7 +2455,7 @@ export type BatchHandle = Message<"llmleaf.v1.BatchHandle"> & {
1606
2455
  * Use `create(BatchHandleSchema)` to create a new message.
1607
2456
  */
1608
2457
  export const BatchHandleSchema: GenMessage<BatchHandle> = /*@__PURE__*/
1609
- messageDesc(file_llmleaf_v1_llmleaf, 43);
2458
+ messageDesc(file_llmleaf_v1_llmleaf, 65);
1610
2459
 
1611
2460
  /**
1612
2461
  * One line of the JSONL results stream (GET /v1/batches/{id}/results).
@@ -1635,7 +2484,7 @@ export type BatchResultLine = Message<"llmleaf.v1.BatchResultLine"> & {
1635
2484
  * Use `create(BatchResultLineSchema)` to create a new message.
1636
2485
  */
1637
2486
  export const BatchResultLineSchema: GenMessage<BatchResultLine> = /*@__PURE__*/
1638
- messageDesc(file_llmleaf_v1_llmleaf, 44);
2487
+ messageDesc(file_llmleaf_v1_llmleaf, 66);
1639
2488
 
1640
2489
  /**
1641
2490
  * @generated from message llmleaf.v1.BatchResponse
@@ -1657,7 +2506,7 @@ export type BatchResponse = Message<"llmleaf.v1.BatchResponse"> & {
1657
2506
  * Use `create(BatchResponseSchema)` to create a new message.
1658
2507
  */
1659
2508
  export const BatchResponseSchema: GenMessage<BatchResponse> = /*@__PURE__*/
1660
- messageDesc(file_llmleaf_v1_llmleaf, 45);
2509
+ messageDesc(file_llmleaf_v1_llmleaf, 67);
1661
2510
 
1662
2511
  /**
1663
2512
  * @generated from message llmleaf.v1.BatchError
@@ -1679,7 +2528,7 @@ export type BatchError = Message<"llmleaf.v1.BatchError"> & {
1679
2528
  * Use `create(BatchErrorSchema)` to create a new message.
1680
2529
  */
1681
2530
  export const BatchErrorSchema: GenMessage<BatchError> = /*@__PURE__*/
1682
- messageDesc(file_llmleaf_v1_llmleaf, 46);
2531
+ messageDesc(file_llmleaf_v1_llmleaf, 68);
1683
2532
 
1684
2533
  /**
1685
2534
  * @generated from enum llmleaf.v1.Role