"""
This type stub file was generated by pyright.
"""

from typing import TYPE_CHECKING

from prompt_toolkit.validation import Validator

if TYPE_CHECKING:
    ...

class Project:
    def __init__(
        self,
        allow_file: list[str] | None = ...,
        ci_provider: str | None = ...,
        copyright_head: str | None = ...,
        enable_cython: bool | None = ...,
        enable_uv: bool | None = ...,
        github_harden_runner: bool | None = ...,
        strict: bool | None = ...,
        verify_email: bool | None = ...,
        check_package_exists: bool | None = ...,
    ) -> None: ...
    def __call__(self) -> list[str]: ...
    def name(
        self, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def summary(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def keywords(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def license_file(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def home_page(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def author(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def author_email(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def license_(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str, dict[str, list[str]], dict[str, str]]: ...
    def license_expression(
        self,
        project_name: str,
        _license: str,
        output: dict[str, list[str]],
        prefix: dict[str, str],
    ) -> tuple[None | list[str] | str, dict[str, list[str]], dict[str, str]]: ...
    def maintainer(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def maintainer_email(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[None | list[str] | str | bool, dict[str, list[str]], dict[str, str]]: ...
    def requires_dist(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[list[str] | str | bool | None, dict[str, list[str]], dict[str, str]]: ...
    def readme_type(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[str | list[str], dict[str, list[str]], dict[str, str]]: ...
    def typing(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[str | list[str], dict[str, list[str]], dict[str, str]]: ...
    def project_urls(
        self, project_name: str, output: dict[str, list[str]], prefix: dict[str, str]
    ) -> tuple[str, dict[str, list[str]], dict[str, str]]: ...
    def header_input(
        self,
        label: str,
        output: dict[str, list[str]],
        prefix: dict[str, str],
        *args: str,
        validator: Validator | None = ...,
        split_on: str | None = ...
    ) -> tuple[bool | None | list[str], dict[str, list[str]], dict[str, str]]: ...
