# Class BaseTool.ToolArgsConfig

java.lang.Object
com.google.adk.JsonBaseModel
com.google.adk.tools.BaseTool.ToolArgsConfig

Enclosing class:
  `BaseTool`

public static class BaseTool.ToolArgsConfig extends JsonBaseModel
Configuration class for tool arguments that allows arbitrary key-value pairs.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ToolArgsConfig()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Map<String,Object>`
  `getAdditionalProperties()`
  `<T> T`
  `getOrDefault(String key, T defaultValue)`
  `<T> Optional<T>`
  `getOrEmpty(String key, com.fasterxml.jackson.core.type.TypeReference<T> typeReference)`
  `boolean`
  `isEmpty()`
  `BaseTool.ToolArgsConfig`
  `put(String key, Object value)`
  `void`
  `setAdditionalProperty(String key, Object value)`
  `int`
  `size()`

  ### Methods inherited from class JsonBaseModel

  `fromJsonNode, fromJsonString, getMapper, toJson, toJsonNode, toJsonString`
  Modifier and Type
  Method
  Description
  `static <T extends JsonBaseModel>
  T`
  `fromJsonNode(com.fasterxml.jackson.databind.JsonNode jsonNode, Class<T> clazz)`
  Deserializes a JsonNode to an object of the given type.
  `static <T extends JsonBaseModel>
  T`
  `fromJsonString(String jsonString, Class<T> clazz)`
  Deserializes a Json string to an object of the given type.
  `static com.fasterxml.jackson.databind.ObjectMapper`
  `getMapper()`
  Returns the mutable ObjectMapper instance used by ADK.
  `String`
  `toJson()`
  Serializes this object (i.e., the ObjectMappper instance used by ADK) to a Json string.
  `protected static com.fasterxml.jackson.databind.JsonNode`
  `toJsonNode(Object object)`
  Serializes an object to a JsonNode.
  `static String`
  `toJsonString(Object object)`
  Serializes an object to a Json string.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ToolArgsConfig

    public ToolArgsConfig()

- ## Method Details

  - ### isEmpty

    public boolean isEmpty()

  - ### size

    public int size()

  - ### put

    @CanIgnoreReturnValue public BaseTool.ToolArgsConfig put(String key, Object value)

  - ### getOrEmpty

    public <T> Optional<T> getOrEmpty(String key, com.fasterxml.jackson.core.type.TypeReference<T> typeReference)

  - ### getOrDefault

    public <T> T getOrDefault(String key, T defaultValue)

  - ### getAdditionalProperties

    public Map<String,Object> getAdditionalProperties()

  - ### setAdditionalProperty

    public void setAdditionalProperty(String key, Object value)