defmodule GitHub.Pages.HttpsCertificate do @moduledoc """ Provides struct and type for a Pages.HttpsCertificate """ use GitHub.Encoder @type t :: %__MODULE__{ __info__: map, description: String.t(), domains: [String.t()], expires_at: Date.t() | nil, state: String.t() } defstruct [:__info__, :description, :domains, :expires_at, :state] @doc false @spec __fields__(atom) :: keyword def __fields__(type \\ :t) def __fields__(:t) do [ description: {:string, :generic}, domains: [string: :generic], expires_at: {:string, :date}, state: {:enum, [ "new", "authorization_created", "authorization_pending", "authorized", "authorization_revoked", "issued", "uploaded", "approved", "errored", "bad_authz", "destroy_pending", "dns_changed" ]} ] end end