---
source: crates/normalize-typegen/tests/codegen.rs
assertion_line: 183
expression: output
---
# Auto-generated by normalize-typegen

from pydantic import BaseModel, Field, ConfigDict
from typing import Optional, Literal

"""Physical address."""
class Address(BaseModel):
    model_config = ConfigDict(frozen=True)

    city: str
    country: str
    postal_code: Optional[str] = Field(default=None)
    street: str

"""User account status."""
Status = Literal[
    "pending",
    "active",
    "suspended",
    "deleted"
]

"""A user account."""
class User(BaseModel):
    model_config = ConfigDict(frozen=True)

    address: Optional["Address"] = Field(default=None)
    age: Optional[int] = Field(default=None)
    email: str = Field(description="Email address")
    id: str = Field(description="Unique identifier")
    metadata: Optional[dict[str, str]] = Field(default=None)
    name: Optional[str] = Field(default=None)
    status: "Status"
    tags: Optional[list[str]] = Field(default=None)
