Behaviour for websocket client transports.
Implementations deliver frames to the owner as
{:ex_daytona_ws, pid, {:text | :binary, data}} messages and signal
the end with {:ex_daytona_ws, pid, {:closed, reason}} — the message
protocol ExDaytona.WebSocket established.
Summary
Callbacks
@callback close(pid()) :: :ok
@callback connect(url :: String.t(), api_key :: String.t(), opts :: keyword()) :: {:ok, pid()} | {:error, ExDaytona.Error.t()}
@callback send_binary(pid(), iodata()) :: :ok | {:error, ExDaytona.Error.t()}
@callback send_text(pid(), iodata()) :: :ok | {:error, ExDaytona.Error.t()}