# ICodeGenerator Methods

- Package: [Aspire.TypeSystem](/reference/api/csharp/aspire.typesystem.md)
- Type: [ICodeGenerator](/reference/api/csharp/aspire.typesystem/icodegenerator.md)
- Kind: `Methods`
- Members: `1`

Interface for generating language-specific code from ATS capabilities.

## GenerateDistributedApplication(AtsContext)

- Name: `GenerateDistributedApplication(AtsContext)`
- Modifiers: `abstract`
- Returns: `Dictionary<string, string>`

Generates the distributed application SDK code from the ATS context.

```csharp
public interface ICodeGenerator
{
    public abstract Dictionary<string, string> GenerateDistributedApplication(
        AtsContext context)
    {
        // ...
    }
}
```

## Parameters

- `context` ([AtsContext](/reference/api/csharp/aspire.typesystem/atscontext.md))
  The ATS context containing capabilities, types, and enums.

## Returns

`Dictionary<string, string>` -- A dictionary of file paths to file contents.
