ExUtcp.Types (ex_utcp v0.2.8)
View SourceCore types and data structures for the UTCP protocol.
Summary
Types
@type deregister_result() :: :ok | {:error, any()}
@type provider() :: %{name: String.t(), type: provider_type(), __struct__: module()}
@type provider_type() ::
:http
| :sse
| :http_stream
| :cli
| :websocket
| :grpc
| :graphql
| :tcp
| :udp
| :webrtc
| :mcp
| :text
@type stream_call_result() :: {:ok, stream_result()} | {:error, any()}
@type stream_event() :: stream_chunk() | stream_error() | stream_end()
@type stream_result() :: %{ type: :stream, data: [stream_chunk()] | Enumerable.t(), metadata: %{required(String.t()) => any()} | nil }
@type tool() :: %{ name: String.t(), description: String.t(), inputs: tool_input_output_schema(), outputs: tool_input_output_schema(), tags: [String.t()], average_response_size: integer() | nil, provider: provider() }
@type transport() :: module()
@type variable_not_found() :: %{__exception__: true, variable_name: String.t()}