# SPDX-FileCopyrightText: 2025 Marco Ricci <software@the13thletter.info>
#
# SPDX-License-Identifier: Zlib
# ruff: noqa: TRY400
"""Command-line interface for derivepassphrase."""
from __future__ import annotations
import base64
import collections
import contextlib
import json
import logging
import os
from typing import (
TYPE_CHECKING,
Final,
Literal,
NoReturn,
TextIO,
cast,
)
import click
import click.shell_completion
from typing_extensions import (
Any,
)
from derivepassphrase import _internals, _types, exporter, ssh_agent, vault
from derivepassphrase._internals import cli_helpers, cli_machinery
from derivepassphrase._internals import cli_messages as _msg
if TYPE_CHECKING:
from collections.abc import Sequence
from collections.abc import Set as AbstractSet
__all__ = ('derivepassphrase',)
PROG_NAME = _internals.PROG_NAME
VERSION = _internals.VERSION
@click.group(
context_settings={
'help_option_names': ['-h', '--help'],
'ignore_unknown_options': True,
'allow_interspersed_args': False,
},