# Artifact.Transformable

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


```
interface Artifact.Transformable
```

<br />

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

|---|---|
| `https://developer.android.com/reference/tools/gradle-api/9.6/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. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.NATIVE_DEBUG_METADATA` | Directories with native debug metadata |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.NATIVE_SYMBOL_TABLES` | Directories with debug symbol table |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/MultipleArtifact.PRE_COMPILATION_CLASSES` | Directories containing generated code that will be added to compile classpath for the module. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/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 |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/ScopedArtifact.JAVA_RES` |   |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.AAR` | The final AAR file as it would be published. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.APK` | Directory where APK files will be located. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.ASSETS` | Assets that will be packaged in the resulting AAR, APK or Bundle. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.BUNDLE` | The final Bundle ready for consumption at Play Store. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.MERGED_MANIFEST` | Merged manifest file that will be used in the APK, Bundle and InstantApp packages. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.METADATA_LIBRARY_DEPENDENCIES_REPORT` | The metadata for the library dependencies. |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_FILE` |   |
| `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/SingleArtifact.OBFUSCATION_MAPPING_PARTITION_FILE` |   |

*** ** * ** ***

Denotes an artifact type that can be transformed.

Either a `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Single` or `https://developer.android.com/reference/tools/gradle-api/9.6/com/android/build/api/artifact/Artifact.Multiple` artifact type can be transformed.