Metadata-Version: 2.3
Name: pydantic-tooltypes
Version: 0.1.1
Summary: TypeScript-like utilities for Pydantic models: Partial, Pick, Omit, Required
License: MIT
Keywords: pydantic,partial,typescript,model,schema,utils
Author: Juan Marcelo Panasiti
Author-email: juanpanasiti@gmail.com
Requires-Python: >=3.10
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: pydantic (>=2.0,<3.0)
Project-URL: Homepage, https://github.com/juanpanasiti/pydantic-tooltypes
Project-URL: Repository, https://github.com/juanpanasiti/pydantic-tooltypes
Description-Content-Type: text/markdown

# Pydantic Tooltypes

TypeScript-like utilities for Pydantic models: `Partial`, `Pick`, `Omit`, and `Required`.

## Features

- `Partial`: Makes all fields in a Pydantic model optional.
- `Pick`: Selects a subset of fields from a model.
- `Omit`: Removes a subset of fields from a model.
- `Required`: Makes selected fields required, others optional.

## Installation

```bash
pip install pydantic-tooltypes
```

## Usage

```python
from pydantic import BaseModel
from pydantic_tooltypes import Partial, Pick, Omit, Required

class User(BaseModel):
    id: int
    email: str

PartialUser = Partial(User)
PickUser = Pick(User, keys=['email'])
OmitUser = Omit(User, keys=['id'])
RequiredUser = Required(PartialUser, keys=['email'])
```

## License

MIT

