File: Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\OtelContext.GetJsonTypeInfo.g.cs
Project: ..\..\..\src\Libraries\Microsoft.Extensions.AI\Microsoft.Extensions.AI.csproj (Microsoft.Extensions.AI)
// <auto-generated/>
 
#nullable enable annotations
#nullable disable warnings
 
// Suppress warnings about [Obsolete] member usage in generated code.
#pragma warning disable CS0612, CS0618
 
namespace Microsoft.Extensions.AI
{
    internal sealed partial class OtelContext : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver
    {
        /// <inheritdoc/>
        public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type)
        {
            Options.TryGetTypeInfo(type, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? typeInfo);
            return typeInfo;
        }
 
        global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver.GetTypeInfo(global::System.Type type, global::System.Text.Json.JsonSerializerOptions options)
        {
            if (type == typeof(bool))
            {
                return Create_Boolean(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelBlobPart))
            {
                return Create_OtelBlobPart(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelCodeInterpreterToolCall))
            {
                return Create_OtelCodeInterpreterToolCall(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelCodeInterpreterToolCallResponse))
            {
                return Create_OtelCodeInterpreterToolCallResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelFilePart))
            {
                return Create_OtelFilePart(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelFunction))
            {
                return Create_OtelFunction(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelGenericPart))
            {
                return Create_OtelGenericPart(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelImageGenerationToolCall))
            {
                return Create_OtelImageGenerationToolCall(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelImageGenerationToolCallResponse))
            {
                return Create_OtelImageGenerationToolCallResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelMcpApprovalRequest))
            {
                return Create_OtelMcpApprovalRequest(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelMcpApprovalResponse))
            {
                return Create_OtelMcpApprovalResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelMcpToolCall))
            {
                return Create_OtelMcpToolCall(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelMcpToolCallResponse))
            {
                return Create_OtelMcpToolCallResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelMessage))
            {
                return Create_OtelMessage(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallPart<global::Microsoft.Extensions.AI.OtelCodeInterpreterToolCall>))
            {
                return Create_OtelServerToolCallPartOtelCodeInterpreterToolCall(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallPart<global::Microsoft.Extensions.AI.OtelImageGenerationToolCall>))
            {
                return Create_OtelServerToolCallPartOtelImageGenerationToolCall(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallPart<global::Microsoft.Extensions.AI.OtelMcpApprovalRequest>))
            {
                return Create_OtelServerToolCallPartOtelMcpApprovalRequest(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallPart<global::Microsoft.Extensions.AI.OtelMcpToolCall>))
            {
                return Create_OtelServerToolCallPartOtelMcpToolCall(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallResponsePart<global::Microsoft.Extensions.AI.OtelCodeInterpreterToolCallResponse>))
            {
                return Create_OtelServerToolCallResponsePartOtelCodeInterpreterToolCallResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallResponsePart<global::Microsoft.Extensions.AI.OtelImageGenerationToolCallResponse>))
            {
                return Create_OtelServerToolCallResponsePartOtelImageGenerationToolCallResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallResponsePart<global::Microsoft.Extensions.AI.OtelMcpApprovalResponse>))
            {
                return Create_OtelServerToolCallResponsePartOtelMcpApprovalResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelServerToolCallResponsePart<global::Microsoft.Extensions.AI.OtelMcpToolCallResponse>))
            {
                return Create_OtelServerToolCallResponsePartOtelMcpToolCallResponse(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelToolCallRequestPart))
            {
                return Create_OtelToolCallRequestPart(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelToolCallResponsePart))
            {
                return Create_OtelToolCallResponsePart(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.OtelUriPart))
            {
                return Create_OtelUriPart(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.RealtimeOtelMessage))
            {
                return Create_RealtimeOtelMessage(options);
            }
            if (type == typeof(global::Microsoft.Extensions.AI.RealtimeOtelToolCallPart))
            {
                return Create_RealtimeOtelToolCallPart(options);
            }
            if (type == typeof(global::System.Collections.Generic.IDictionary<string, object>))
            {
                return Create_IDictionaryStringObject(options);
            }
            if (type == typeof(global::System.Collections.Generic.IEnumerable<global::Microsoft.Extensions.AI.OtelFunction>))
            {
                return Create_IEnumerableOtelFunction(options);
            }
            if (type == typeof(global::System.Collections.Generic.IEnumerable<global::Microsoft.Extensions.AI.RealtimeOtelMessage>))
            {
                return Create_IEnumerableRealtimeOtelMessage(options);
            }
            if (type == typeof(global::System.Collections.Generic.IList<object>))
            {
                return Create_IListObject(options);
            }
            if (type == typeof(global::System.Collections.Generic.IReadOnlyDictionary<string, object>))
            {
                return Create_IReadOnlyDictionaryStringObject(options);
            }
            if (type == typeof(global::System.Collections.Generic.List<object>))
            {
                return Create_ListObject(options);
            }
            if (type == typeof(global::System.Text.Json.JsonElement))
            {
                return Create_JsonElement(options);
            }
            if (type == typeof(global::System.Text.Json.JsonElement?))
            {
                return Create_NullableJsonElement(options);
            }
            if (type == typeof(object))
            {
                return Create_Object(options);
            }
            if (type == typeof(string))
            {
                return Create_String(options);
            }
            return null;
        }
    }
}