# Package org.apache.ivy.core.module.descriptor

- Interface Summary
  Interface | Description
  --- | ---
  Artifact | Representation of a published 'file' in the development environment.
  ConfigurationAware | Objects implementing this interface are aware of module configurations, and can thus be added to configurations, and list their configurations.
  DependencyArtifactDescriptor | This describes an artifact that is asked for a dependency.
  DependencyDescriptor | Describes a dependency from a depender to a dependee.
  DependencyDescriptorMediator | A DependencyDescriptorMediator is responsible for dependency descriptor mediation.
  ExcludeRule | This describes a rule of exclusion.
  ExtendsDescriptor | Describes parent descriptor information for a module descriptor.
  IncludeRule | This describes a rule of inclusion.
  InheritableItem | Interface for elements that can be inherited from a parent descriptor by a child descriptor.
  ModuleDescriptor | Descriptor of a module.

- Class Summary
  Class | Description
  --- | ---
  AbstractArtifact |
  AbstractIncludeExcludeRule | Abstract class used as implementation for both `IncludeRule` and `ExcludeRule`, since their contract is almost identical
  Configuration | Represents a module configuration
  Configuration.Visibility |
  ConfigurationGroup | A configuration which is actually a group of several configurations.
  ConfigurationIntersection | A configuration which is actually the intersection of several configurations.
  DefaultArtifact |
  DefaultDependencyArtifactDescriptor |
  DefaultDependencyDescriptor | This class can be used as the default implementation for DependencyDescriptor.
  DefaultExcludeRule |
  DefaultExtendsDescriptor |
  DefaultIncludeRule |
  DefaultModuleDescriptor |
  ExtraInfoHolder |
  License |
  MDArtifact |
  OverrideDependencyDescriptorMediator | DependencyDescriptorMediator used to override some dependency descriptors values, such as the branch or version of the dependency.