# Artifact.Replaceable

# Artifact.Replaceable

[View Source](https://cs.android.com/search?q=file:com/android/build/api/artifact/Artifact.kt+class:com.android.build.api.artifact.Artifact.Replaceable)  
Added in 4.2.0  

<br />

```
interface Artifact.Replaceable
```

<br />

Known direct subclasses  
[MultipleArtifact.MULTIDEX_KEEP_PROGUARD](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/MultipleArtifact.MULTIDEX_KEEP_PROGUARD),[MultipleArtifact.NATIVE_DEBUG_METADATA](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/MultipleArtifact.NATIVE_DEBUG_METADATA),[MultipleArtifact.NATIVE_SYMBOL_TABLES](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/MultipleArtifact.NATIVE_SYMBOL_TABLES),[ScopedArtifact.CLASSES](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/ScopedArtifact.CLASSES),[ScopedArtifact.JAVA_RES](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/ScopedArtifact.JAVA_RES),[SingleArtifact.APK](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.APK),[SingleArtifact.ASSETS](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.ASSETS),[SingleArtifact.MERGED_MANIFEST](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST),[SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT)  

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [MultipleArtifact.MULTIDEX_KEEP_PROGUARD](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/MultipleArtifact.MULTIDEX_KEEP_PROGUARD)                         | Text files with additional ProGuard rules to be used to determine which classes are compiled into the main dex file.                                                         |
| [MultipleArtifact.NATIVE_DEBUG_METADATA](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/MultipleArtifact.NATIVE_DEBUG_METADATA)                           | Directories with native debug metadata                                                                                                                                       |
| [MultipleArtifact.NATIVE_SYMBOL_TABLES](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/MultipleArtifact.NATIVE_SYMBOL_TABLES)                             | Directories with debug symbol table                                                                                                                                          |
| [ScopedArtifact.CLASSES](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/ScopedArtifact.CLASSES)                                                           | .class files, result of sources compilation and/or external dependencies depending on the scope; includes users' transformation, but does not include Jacoco instrumentation |
| [ScopedArtifact.JAVA_RES](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/ScopedArtifact.JAVA_RES)                                                         |                                                                                                                                                                              |
| [SingleArtifact.APK](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.APK)                                                                   | Directory where APK files will be located.                                                                                                                                   |
| [SingleArtifact.ASSETS](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.ASSETS)                                                             | Assets that will be packaged in the resulting AAR, APK or Bundle.                                                                                                            |
| [SingleArtifact.MERGED_MANIFEST](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST)                                           | Merged manifest file that will be used in the APK, Bundle and InstantApp packages.                                                                                           |
| [SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT) | The metadata for the library dependencies.                                                                                                                                   |

*** ** * ** ***

Denotes an artifact type that can be replaced. Only[Single](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/Artifact.Single)artifacts can be replaced, if you want to replace a[Multiple](https://developer.android.com/reference/tools/gradle-api/8.12/com/android/build/api/artifact/Artifact.Multiple)artifact type, you will need to transform it by combining all the inputs into a single output instance.