# steam-enums

Auto-generated Rust enums for the Steam protocol, derived from Valve's protobuf definitions and SteamKit sources.

## Overview

Every enum in this crate corresponds to a Steam protocol value — account types, app states, market categories, chat states, lobby types, and hundreds more. All types implement `serde::Serialize` and `serde::Deserialize` for use in API responses, database documents, and protobuf-adjacent payloads.

The crate is code-generated. Do not hand-edit individual enum files.

## Usage

All enums are re-exported from the crate root:

```rust
use steam_enums::{EAccountType, EPersonaState, EChatEntryType};

let account_type = EAccountType::Individual;
let state = EPersonaState::Online;
```

## Conventions

- All enum names follow the original Valve `E`-prefix naming convention (e.g., `EAccountType`, `EAppType`).
- Variants are integer-backed and `#[repr(i32)]` unless the underlying type requires otherwise.
- Unknown or future values can be represented as raw integers via the `__Unknown(i32)` catch-all variant where present.

## Dependencies

| Crate | Role |
|-------|------|
| `serde` | Serialize/Deserialize derives for all enum types |
