@NonNullApi

# Package org.gradle.api.provider

The interfaces for value providers.

Since:
  4.0

- Interface Summary
  Interface | Description
  --- | ---
  HasConfigurableValue | Represents an object that holds a value that is configurable, meaning that the value or some source for the value, such as a `Provider`, can be specified directly on the object.
  HasMultipleValues<T> | Represents a property whose value can be set using multiple elements of type `HasMultipleValues`, such as a collection property.
  ListProperty<T> | Represents a property whose type is a `List` of elements of type `ListProperty`.
  MapProperty<K,​V> | Represents a property whose type is a `Map` of keys of type `MapProperty` and values of type `MapProperty`.
  Property<T> | A container object that represents a configurable value of a specific type.
  Provider<T> | A container object that provides a value of a specific type.
  ProviderConvertible<T> | An object that can be converted to a `Provider`.
  ProviderFactory | A factory for creating instances of `Provider`.
  SetProperty<T> | Represents a property whose type is a `Set` of elements of type `SetProperty`.
  SupportsConvention | Marks a Gradle API custom type as supporting conventions.
  ValueSource<T,​P extends ValueSourceParameters> | Represents an external source of information used by a Gradle build.
  ValueSourceParameters | Marker interface for parameter objects to `ValueSource`s.
  ValueSourceSpec<P extends ValueSourceParameters> | Base configuration for value source definitions.

- Class Summary
  Class | Description
  --- | ---
  ValueSourceParameters.None | Used for sources without parameters.