# NOTE: This file is auto generated by OpenAPI Generator 7.12.0 (https://openapi-generator.tech).
# Do not edit this file manually.

defmodule Ory.Model.NormalizedProjectRevisionThirdPartyProvider do
  @moduledoc """
  
  """

  @derive Jason.Encoder
  defstruct [
    :additional_id_token_audiences,
    :apple_private_key,
    :apple_private_key_id,
    :apple_team_id,
    :auth_url,
    :azure_tenant,
    :claims_source,
    :client_id,
    :client_secret,
    :created_at,
    :fedcm_config_url,
    :id,
    :issuer_url,
    :label,
    :mapper_url,
    :net_id_token_origin_header,
    :organization_id,
    :pkce,
    :project_revision_id,
    :provider,
    :provider_id,
    :requested_claims,
    :scope,
    :state,
    :subject_source,
    :token_url,
    :updated_at
  ]

  @type t :: %__MODULE__{
    :additional_id_token_audiences => [String.t] | nil,
    :apple_private_key => String.t | nil,
    :apple_private_key_id => String.t | nil,
    :apple_team_id => String.t | nil,
    :auth_url => String.t | nil,
    :azure_tenant => String.t | nil,
    :claims_source => String.t | nil,
    :client_id => String.t | nil,
    :client_secret => String.t | nil,
    :created_at => DateTime.t | nil,
    :fedcm_config_url => String.t | nil,
    :id => String.t | nil,
    :issuer_url => String.t | nil,
    :label => String.t | nil,
    :mapper_url => String.t | nil,
    :net_id_token_origin_header => String.t | nil,
    :organization_id => String.t | nil,
    :pkce => String.t | nil,
    :project_revision_id => String.t | nil,
    :provider => String.t | nil,
    :provider_id => String.t | nil,
    :requested_claims => map() | nil,
    :scope => [String.t] | nil,
    :state => String.t | nil,
    :subject_source => String.t | nil,
    :token_url => String.t | nil,
    :updated_at => DateTime.t | nil
  }

  alias Ory.Deserializer

  def decode(value) do
    value
     |> Deserializer.deserialize(:created_at, :datetime, nil)
     |> Deserializer.deserialize(:updated_at, :datetime, nil)
  end
end

