# com.android.build.api.artifact

# com.android.build.api.artifact

## Interfaces

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Artifact.Appendable](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Appendable)                             | Denotes an artifact type that can be appended to.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [Artifact.ContainsMany](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.ContainsMany)                         | Denotes a single[DIRECTORY](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Companion#DIRECTORY())that may contain zero to many[com.android.build.api.variant.BuiltArtifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/variant/BuiltArtifact).                                                                                                                                                                                                                            |
| [Artifact.Replaceable](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Replaceable)                           | Denotes an artifact type that can be replaced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [Artifact.Transformable](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Transformable)                       | Denotes an artifact type that can transformed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [ArtifactTransformationRequest](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/ArtifactTransformationRequest)         | When a[Directory](https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html)contains more than one artifact (for example, consider[SingleArtifact.APK](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/SingleArtifact.APK)with multiple APKs for different screen densities), this object will abstract away having to deal with[BuiltArtifacts](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/variant/BuiltArtifacts)and manually load and write the metadata files. |
| [Artifacts](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifacts)                                                 | Access to the artifacts on a Variant object.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [CombiningOperationRequest](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/CombiningOperationRequest)                 |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [InAndOutDirectoryOperationRequest](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/InAndOutDirectoryOperationRequest) |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [InAndOutFileOperationRequest](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/InAndOutFileOperationRequest)           | Operations performed by a[Task](https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html)with a single[RegularFile](https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html)or[Directory](https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html)output.                                                                                                                                                                                                                                                               |
| [OutOperationRequest](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/OutOperationRequest)                             | Operations performed by a[Task](https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html)with a single[RegularFile](https://docs.gradle.org/current/javadoc/org/gradle/api/file/RegularFile.html)or[Directory](https://docs.gradle.org/current/javadoc/org/gradle/api/file/Directory.html)output.                                                                                                                                                                                                                                                               |
| [TaskBasedOperation](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/TaskBasedOperation)                               | Interface with methods to wire input and output method references to[Task](https://docs.gradle.org/current/javadoc/org/gradle/api/Task.html)-based operations.                                                                                                                                                                                                                                                                                                                                                                                                          |

## Classes

|------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Artifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact)                   | Defines a type of artifact handled by the Android Gradle Plugin.                                                                                                         |
| [Artifact.Multiple](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Multiple) | Denotes possible multiple[FileSystemLocation](https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileSystemLocation.html)instances for this artifact type.      |
| [Artifact.Single](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Single)     | Denotes a single[FileSystemLocation](https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileSystemLocation.html)instance of this artifact type at a given time. |
| [ArtifactKind](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/ArtifactKind)           | Exhaustive list of artifact file representations supported by the Android Gradle plugin.                                                                                 |
| [MultipleArtifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/MultipleArtifact)   | Public[Artifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact)for Android Gradle plugin.                         |
| [ScopedArtifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/ScopedArtifact)       | List of ScopedArtifacts.Scope artifacts.                                                                                                                                 |
| [SingleArtifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/SingleArtifact)       | Public[Artifact](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact)for Android Gradle plugin.                         |

## Enums

|------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|
| [Artifact.Category](https://developer.android.com/reference/tools/gradle-api/7.4/com/android/build/api/artifact/Artifact.Category) | Defines the kind of artifact type. this will be used to determine the output file location for instance. |