# This file is auto-generated by `mix graph.gen.schema`. Do not edit manually. defmodule GraphApi.Schema.Beta.VerifiedDomain do @moduledoc """ Auto-generated schema for `microsoft.graph.verifiedDomain`. """ defstruct [:name, :type, :capabilities, :is_default, :is_initial] @type t :: %__MODULE__{ name: String.t() | nil, type: String.t() | nil, capabilities: String.t() | nil, is_default: boolean() | nil, is_initial: boolean() | nil } @field_mapping %{ {"name", :name}, {"type", :type}, {"capabilities", :capabilities}, {"isDefault", :is_default}, {"isInitial", :is_initial} } @field_names [ "name", "type", "capabilities", "isDefault", "isInitial" ] @doc "Mapping from camelCase API field names to snake_case struct atoms." @spec __field_mapping__() :: %{String.t() => atom()} def __field_mapping__, do: @field_mapping @doc "List of camelCase API field names (for OData `$select`)." @spec __field_names__() :: [String.t()] def __field_names__, do: @field_names @doc "Converts a camelCase string-key map (API response) into this struct." @spec from_map(map()) :: t() def from_map(map) when is_map(map) do %__MODULE__{ name: map["name"], type: map["type"], capabilities: map["capabilities"], is_default: map["isDefault"], is_initial: map["isInitial"] } end @doc "Converts this struct to a camelCase string-key map. Nil fields are omitted." @spec to_map(t()) :: map() def to_map(%__MODULE__{} = struct) do [ {"name", struct.name}, {"type", struct.type}, {"capabilities", struct.capabilities}, {"isDefault", struct.is_default}, {"isInitial", struct.is_initial} ] |> Enum.reject(fn {_k, v} -> is_nil(v) end) |> Map.new() end end