# android.support.test.espresso.web.model

# android.support.test.espresso.web.model

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

## Interfaces

|------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------|
| [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)\<R\>                                                    | An Atom is a thin wrapper around javascript.                                                        |
| [JSONAble](https://developer.android.com/reference/android/support/test/espresso/web/model/JSONAble)                                                 | Allows implementors to instruct ModelCodec on how to encode this object as JSON.                    |
| [JSONAble.DeJSONFactory](https://developer.android.com/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory)                     | Allows implementors to replace a JSONObject (representated as a map) with a more applicable object. |
| [TransformingAtom.Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)\<I, O\> | Converts input to output.                                                                           |

## Classes

|------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------|
| [Atoms](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms)                               | Utility class wrapping simple and more commonly used atoms.         |
| [ElementReference](https://developer.android.com/reference/android/support/test/espresso/web/model/ElementReference)         | A reference to a javascript element existing within a WebView.      |
| [Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)                     | Represents the results of a Javascript execution.                   |
| [ModelCodec](https://developer.android.com/reference/android/support/test/espresso/web/model/ModelCodec)                     | Encodes/Decodes JSON.                                               |
| [SimpleAtom](https://developer.android.com/reference/android/support/test/espresso/web/model/SimpleAtom)                     | A simple implementation of Atom suitable for subclassing.           |
| [TransformingAtom](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom)\<I, O\> | Decorates another atom and transforms its output to another type.   |
| [WindowReference](https://developer.android.com/reference/android/support/test/espresso/web/model/WindowReference)           | A reference to a javascript window/frame existing within a WebView. |

## Enums

|--------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------|
| [SimpleAtom.ElementReferencePlacement](https://developer.android.com/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement) | Controls whether the ElementReference appears as the first arg or last arg to the script. |

-

  ## Interfaces

  - [Atom](https://developer.android.com/reference/android/support/test/espresso/web/model/Atom)
  - [JSONAble](https://developer.android.com/reference/android/support/test/espresso/web/model/JSONAble)
  - [JSONAble.DeJSONFactory](https://developer.android.com/reference/android/support/test/espresso/web/model/JSONAble.DeJSONFactory)
  - [TransformingAtom.Transformer](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom.Transformer)
-

  ## Classes

  - [Atoms](https://developer.android.com/reference/android/support/test/espresso/web/model/Atoms)
  - [ElementReference](https://developer.android.com/reference/android/support/test/espresso/web/model/ElementReference)
  - [Evaluation](https://developer.android.com/reference/android/support/test/espresso/web/model/Evaluation)
  - [ModelCodec](https://developer.android.com/reference/android/support/test/espresso/web/model/ModelCodec)
  - [SimpleAtom](https://developer.android.com/reference/android/support/test/espresso/web/model/SimpleAtom)
  - [TransformingAtom](https://developer.android.com/reference/android/support/test/espresso/web/model/TransformingAtom)
  - [WindowReference](https://developer.android.com/reference/android/support/test/espresso/web/model/WindowReference)
-

  ## Enums

  - [SimpleAtom.ElementReferencePlacement](https://developer.android.com/reference/android/support/test/espresso/web/model/SimpleAtom.ElementReferencePlacement)