---
source: lib/src/sdk/python/mod.rs
expression: client
---
# @generated by usage-cli from test.usage.kdl. Do not edit manually.
from __future__ import annotations
from typing import Optional
from .runtime import CliResult, CliRunner
from .types import GreetArgs

class App:
    def __init__(self, bin_path: str = "app") -> None:
        self._runner = CliRunner(bin_path)
        self.greet = Greet(self._runner)

    def exec(self) -> CliResult:
        """<SUBCOMMAND>"""
        cmd_args: list[str] = []
        return self._runner.run(cmd_args)

class Greet:
    """Greet someone"""
    def __init__(self, runner: CliRunner) -> None:
        self._runner = runner

    def exec(self, args: GreetArgs) -> CliResult:
        """greet <name>
        Example: app greet hello
        """
        cmd_args: list[str] = ["greet"]
        if args.name is not None: cmd_args.append(str(args.name))
        return self._runner.run(cmd_args)
