defprotocol GenAI.Thread.StateProtocol do def with_model(state, model) def with_setting(state, setting, value) def with_settings(state, settings) def with_provider_setting(state, provider, setting, value) def with_provider_settings(state, provider, settings) def with_model_setting(state, model, setting, value) def with_model_settings(state, model, settings) def with_tool(state, tool) def with_tools(state, tools) def with_message(state, message) def with_messages(state, messages) def model(state) def settings(state) def model_settings(state, model) def provider_settings(state, provider) def messages(state, provider) def tools(state, provider) end