class DeleteClient implements Runnable {

    @Override
    public void run() {
        Optional<Client> client = manager.getClientByID(uid);
        if (!client.isPresent()) {
            outputStream.println("No client exists with that user ID");
        } else if (!yes) {
            outputStream.println(
                    String.format("Removing client: %s, with date of birth: %s,\nto proceed please rerun the command "
                                    + "with the -y flag",
                            client.get().getFullName(),
                            client.get().getDateOfBirth()));
        } else {
            // Successful deletion
            Action action = new DeleteClientAction(client.get(), manager);

            outputStream.println(invoker.execute(action));
        }
    }

    public  DeleteClient(PrintStream outputStream, ActionInvoker invoker);
    public  DeleteClient(ClientManager manager, ActionInvoker invoker);

}