# This file is auto-generated by alef — DO NOT EDIT.
# alef:hash:4e15143f4af1ae8bafbdb1506ef057da924484c66a19483966333558ad437e75
# To regenerate: alef generate
# To verify freshness: alef verify --exit-code
# Issues & docs: https://github.com/kreuzberg-dev/alef
defmodule Kreuzberg.LinkType do
  @moduledoc "Link type classification."

  @typedoc "Link type classification."
  @type t :: :anchor | :internal | :external | :email | :phone | :other

  @anchor :anchor
  @internal :internal
  @external :external
  @email :email
  @phone :phone
  @other :other

  @doc "Anchor link (#section)"
  @spec anchor() :: t()
  def anchor, do: @anchor
  @doc "Internal link (same domain)"
  @spec internal() :: t()
  def internal, do: @internal
  @doc "External link (different domain)"
  @spec external() :: t()
  def external, do: @external
  @doc "Email link (mailto:)"
  @spec email() :: t()
  def email, do: @email
  @doc "Phone link (tel:)"
  @spec phone() :: t()
  def phone, do: @phone
  @doc "Other link type"
  @spec other() :: t()
  def other, do: @other
end
