Metadata-Version: 2.1
Name: oliseh-efris-tools
Version: 0.1.0
Summary: Tools for interacting with the URA eFRIS API
Home-page: https://github.com/olisehgenesis/oliseh_efris_tools
Author: Oliseh Genesis
Author-email: innovationsug@yahoo.com
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
Requires-Dist: requests

Certainly! Here's a suggested structure for your `oliseh_efris_tools` library along with a README file explaining its usage:

### oliseh_efris_tools Library Structure

```
oliseh_efris_tools/
â”‚
â”œâ”€â”€ client.py
â”œâ”€â”€ data.py
â”œâ”€â”€ globaldata.py
â”œâ”€â”€ headers.py
â”œâ”€â”€ returnstateinfo.py
â”œâ”€â”€ __init__.py
â””â”€â”€ README.md
```

### README.md

```markdown
# oliseh_efris_tools

`oliseh_efris_tools` is a Python library that provides tools for interacting with the OLISEH eFRIS (Electronic Fiscal Receipting and Invoicing System) API. It offers functionalities for managing global data, request data, headers, and return state information.

## Installation

You can install `oliseh_efris_tools` via pip:

```bash
pip install oliseh-efris-tools
```

## Usage

### Client

The `Client` class serves as the main interface for interacting with the OLISEH eFRIS API. It provides methods for setting global data, request data, headers, and handling return state information.

Example usage:

```python
from oliseh_efris_tools import Client

# Initialize Client with the URL of the OLISEH eFRIS API
client = Client("https://efris.ura.go.ug/")

# Set global data
client.set_global_key("appId", "AP01")
client.set_global_key("version", "1.1.20191201")
# Add more global data as needed...

# Set request data
client.Data.set_content("encrypted content")
client.Data.set_signature("JKQWJK34K32JJEK2JQWJ5678")
client.Data.set_data_description("0", "1", "0")
# Add more request data as needed...

# Set headers
client.Headers.set_header("User-Agent", "MyApp/1.0")
# Add more headers as needed...

# Send request
client.send_request()
```

### Additional Components

- **GlobalData**: Manages global information.
- **Data**: Manages request data.
- **Headers**: Manages HTTP headers.
- **ReturnStateInfo**: Manages return state information.

## Contributing

Contributions are welcome! If you have suggestions or find any issues, feel free to open an issue or submit a pull request on [GitHub](https://github.com/your-username/oliseh_efris_tools).

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
```

By time of writing this
 the URA endpoint is `"https://efris.ura.go.ug/"` 
