lib/kameleoon/data/cookie.ex
defmodule Kameleoon.Data.Cookie do
@moduledoc false
alias Kameleoon.Data.Validation
@enforce_keys [:cookies]
defstruct [:cookies]
@type cookie_map :: %{optional(String.t()) => String.t()}
@type t :: %__MODULE__{
cookies: cookie_map()
}
@spec new!(cookie_map()) :: t()
def new!(cookies) do
%__MODULE__{cookies: Validation.cookie_map!(cookies, :cookies)}
end
end