namespace AIStudio.Tools.ToolCallingSystem;
///
/// Where a tool sends data when it runs, beyond AI Studio and the provider of the model.
///
///
/// What counts is where the arguments of the model go: every argument may carry content the chat
/// read before, a mail for instance. A chat which read from a mailbox keeps the tools whose data
/// goes too far from running, see OutboundDataRestriction and ToolSelectionRules.IsOutboundDataAllowed.
/// The members run from the most contained to the most open.
///
public enum ToolOutboundData
{
///
/// Nothing leaves AI Studio.
///
NONE,
///
/// Only services configured in AI Studio get the data, such as the wiki of the organization,
/// an ERI server, or the embedding provider of a data source.
///
CONFIGURED_SERVICE,
///
/// A service somebody else runs gets queries the model writes, such as a web search engine.
///
THIRD_PARTY_QUERIES,
///
/// The tool contacts addresses the model chooses, such as the web page it wants to read. The
/// address alone can carry data out.
///
MODEL_CHOSEN_ADDRESSES,
}