One normalized web-search hit. Backends map their provider-specific JSON/HTML into this shape so the web_search tool and the rest of the system never see provider details.
web_search
@type t() :: %ExAthena.Search.Result{ published: String.t() | nil, score: float() | nil, snippet: String.t(), title: String.t(), url: String.t() }