# Shared ## Domain Types ### Commit - `class Commit` - `repo: { branch, host, name, owner}` - `branch: String` - `host: String` - `name: String` - `owner: String` - `sha: String` - `stats: { additions, deletions, total}` - `additions: Integer` - `deletions: Integer` - `total: Integer` - `tree_oid: String` ### File Input - `FileInput = { content} | { url}` - `class Content` - `content: String` File content - `class URL` - `url: String` URL to fetch file content from ### Target - `Target = :node | :typescript | :python | 10 more` - `:node` - `:typescript` - `:python` - `:go` - `:java` - `:kotlin` - `:ruby` - `:terraform` - `:cli` - `:php` - `:csharp` - `:sql` - `:openapi`