# {py:mod}`haniwers.v1.config.generator`

```{py:module} haniwers.v1.config.generator
```

```{autodoc2-docstring} haniwers.v1.config.generator
:allowtitles:
```

## Module Contents

### Classes

````{list-table}
:class: autosummary longtable
:align: left

* - {py:obj}`ConfigKind <haniwers.v1.config.generator.ConfigKind>`
  - ```{autodoc2-docstring} haniwers.v1.config.generator.ConfigKind
    :summary:
    ```
* - {py:obj}`ConfigGenerator <haniwers.v1.config.generator.ConfigGenerator>`
  - ```{autodoc2-docstring} haniwers.v1.config.generator.ConfigGenerator
    :summary:
    ```
````

### Functions

````{list-table}
:class: autosummary longtable
:align: left

* - {py:obj}`find_template <haniwers.v1.config.generator.find_template>`
  - ```{autodoc2-docstring} haniwers.v1.config.generator.find_template
    :summary:
    ```
* - {py:obj}`create_file_from_template <haniwers.v1.config.generator.create_file_from_template>`
  - ```{autodoc2-docstring} haniwers.v1.config.generator.create_file_from_template
    :summary:
    ```
````

### API

`````{py:class} ConfigKind()
:canonical: haniwers.v1.config.generator.ConfigKind

Bases: {py:obj}`str`, {py:obj}`enum.Enum`

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigKind
```

```{rubric} Initialization
```

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigKind.__init__
```

````{py:attribute} ALL
:canonical: haniwers.v1.config.generator.ConfigKind.ALL
:value: >
   'all'

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigKind.ALL
```

````

````{py:attribute} CONFIG
:canonical: haniwers.v1.config.generator.ConfigKind.CONFIG
:value: >
   'config'

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigKind.CONFIG
```

````

````{py:attribute} ENV
:canonical: haniwers.v1.config.generator.ConfigKind.ENV
:value: >
   'env'

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigKind.ENV
```

````

`````

````{py:function} find_template(template_name: str) -> pathlib.Path | None
:canonical: haniwers.v1.config.generator.find_template

```{autodoc2-docstring} haniwers.v1.config.generator.find_template
```
````

````{py:function} create_file_from_template(template_name: str, dest_path: pathlib.Path, force: bool = False, replacements: dict[str, str] | None = None, header_comment: str | None = None) -> bool
:canonical: haniwers.v1.config.generator.create_file_from_template

```{autodoc2-docstring} haniwers.v1.config.generator.create_file_from_template
```
````

`````{py:class} ConfigGenerator(force: bool = False)
:canonical: haniwers.v1.config.generator.ConfigGenerator

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigGenerator
```

```{rubric} Initialization
```

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigGenerator.__init__
```

````{py:method} run(kind: haniwers.v1.config.generator.ConfigKind = ConfigKind.ALL) -> None
:canonical: haniwers.v1.config.generator.ConfigGenerator.run

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigGenerator.run
```

````

````{py:method} create_config_file() -> bool
:canonical: haniwers.v1.config.generator.ConfigGenerator.create_config_file

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigGenerator.create_config_file
```

````

````{py:method} create_env_file() -> bool
:canonical: haniwers.v1.config.generator.ConfigGenerator.create_env_file

```{autodoc2-docstring} haniwers.v1.config.generator.ConfigGenerator.create_env_file
```

````

`````
