defmodule Braintree.Client do @moduledoc """ Client behaviour to be implemented in specific adapters. """ @callback delete(binary) :: {:ok, any} | {:error, any} @callback get(binary) :: {:ok, any} | {:error, any} @callback post(binary, Map.t) :: {:ok, any} | {:error, any} @callback put(binary, Map.t) :: {:ok, any} | {:error, any} @doc false def client do Application.get_env(:braintree, :client, Braintree.Clients.HTTP) end @doc false def configuration do end end