# Interface ArtifactTypeContainer

All Superinterfaces:
  `Collection<ArtifactTypeDefinition>, org.gradle.util.Configurable<NamedDomainObjectContainer<ArtifactTypeDefinition>>, DomainObjectCollection<ArtifactTypeDefinition>, Iterable<ArtifactTypeDefinition>, NamedDomainObjectCollection<ArtifactTypeDefinition>, NamedDomainObjectContainer<ArtifactTypeDefinition>, NamedDomainObjectSet<ArtifactTypeDefinition>, Set<ArtifactTypeDefinition>`

@Incubating public interface ArtifactTypeContainer extends NamedDomainObjectContainer<ArtifactTypeDefinition>
Defines a set of known artifact types and related meta-data. This allows you to fine tune how dependency resolution handles artifacts of a specific type. Each entry in this container defines a particular artifact type, such as a JAR or an AAR, and some information about that artifact type.

Since:
  4.0

## Method Summary

### Methods inherited from interface Collection

`parallelStream, removeIf, stream, toArray`

### Methods inherited from interface DomainObjectCollection

`all, all, whenObjectAdded, whenObjectAdded, whenObjectRemoved, whenObjectRemoved, withType, withType`

### Methods inherited from interface Iterable

`forEach`

### Methods inherited from interface NamedDomainObjectCollection

`add, addAll, addRule, addRule, addRule, findByName, getAsMap, getAt, getByName, getByName, getByName, getNamer, getNames, getRules`

### Methods inherited from interface NamedDomainObjectContainer

`configure, create, create, create, maybeCreate`

### Methods inherited from interface NamedDomainObjectSet

`findAll, matching, matching, withType`

### Methods inherited from interface Set

`add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, spliterator, toArray, toArray`