#compdef kanidm

autoload -U is-at-least

_kanidm() {
    typeset -A opt_args
    typeset -a _arguments_options
    local ret=1

    if is-at-least 5.2; then
        _arguments_options=(-s -S -C)
    else
        _arguments_options=(-s -C)
    fi

    local context curcontext="$curcontext" state line
    _arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm_commands" \
"*::: :->kanidm_tools" \
&& ret=0
    case $state in
    (kanidm_tools)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-command-$line[1]:"
        case $line[1] in
            (login)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-p+[Supply a password to the login option]:PASSWORD:_default' \
'--password=[Supply a password to the login option]:PASSWORD:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(reauth)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(logout)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-l[Do not send a logout request to the server - only remove the session token locally]' \
'--local-only[Do not send a logout request to the server - only remove the session token locally]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(session)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-session-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(cleanup)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__session__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-session-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(cleanup)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(self)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__self_commands" \
"*::: :->self" \
&& ret=0

    case $state in
    (self)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-self-command-$line[1]:"
        case $line[1] in
            (identify-user)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(whoami)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__self__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-self-help-command-$line[1]:"
        case $line[1] in
            (identify-user)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(whoami)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(person)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person_commands" \
"*::: :->person" \
&& ret=0

    case $state in
    (person)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-command-$line[1]:"
        case $line[1] in
            (credential)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__credential_commands" \
"*::: :->credential" \
&& ret=0

    case $state in
    (credential)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-credential-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(use-reset-token)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':token:_default' \
&& ret=0
;;
(create-reset-token)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
'::ttl -- Optionally set how many seconds the reset token should be valid for. Default\: 3600 seconds:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__credential__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-credential-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(use-reset-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create-reset-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(radius)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__radius_commands" \
"*::: :->radius" \
&& ret=0

    case $state in
    (radius)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-radius-command-$line[1]:"
        case $line[1] in
            (show-secret)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(generate-secret)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(delete-secret)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__radius__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-radius-help-command-$line[1]:"
        case $line[1] in
            (show-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(posix)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
'--gidnumber=[]:GIDNUMBER:_default' \
'--shell=[Set the user'\''s login shell]:SHELL:_default' \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(set-password)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__posix__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-posix-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-password)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(session)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-session-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':session-id -- The UUID of the token to destroy:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__session__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-session-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(ssh)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__ssh_commands" \
"*::: :->ssh" \
&& ret=0

    case $state in
    (ssh)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-ssh-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':tag:_default' \
':pubkey:_default' \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':tag:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__ssh__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-ssh-help-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
'-l+[Set the legal name for the person.]:LEGALNAME:_default' \
'--legalname=[Set the legal name for the person.]:LEGALNAME:_default' \
'-n+[Set the account name for the person.]:NEWNAME:_default' \
'--newname=[Set the account name for the person.]:NEWNAME:_default' \
'-i+[Set the display name for the person.]:DISPLAYNAME:_default' \
'--displayname=[Set the display name for the person.]:DISPLAYNAME:_default' \
'*-m+[Set the mail address, can be set multiple times for multiple addresses. The first listed mail address is the '\''primary'\'']:MAIL:_default' \
'*--mail=[Set the mail address, can be set multiple times for multiple addresses. The first listed mail address is the '\''primary'\'']:MAIL:_default' \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':display-name:_default' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(validity)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__validity_commands" \
"*::: :->validity" \
&& ret=0

    case $state in
    (validity)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-validity-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':datetime -- This accepts multiple options\:
- An RFC3339 time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00"
- One of "any", "clear" or "never" to remove account expiry.
- "epoch" to set the expiry to the UNIX epoch
- "now" to expire immediately (this will affect authentication with Kanidm, but external systems may not be aware of the change until next time it'\''s validated, typically ~15 minutes):_default' \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':datetime -- An rfc3339 time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00" or the word "any", "clear" to remove valid from enforcement:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__validity__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-validity-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(certificate)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__person__certificate_commands" \
"*::: :->certificate" \
&& ret=0

    case $state in
    (certificate)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-certificate-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':certificate_path:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__certificate__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-certificate-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-command-$line[1]:"
        case $line[1] in
            (credential)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__credential_commands" \
"*::: :->credential" \
&& ret=0

    case $state in
    (credential)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-credential-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(use-reset-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create-reset-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(radius)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__radius_commands" \
"*::: :->radius" \
&& ret=0

    case $state in
    (radius)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-radius-command-$line[1]:"
        case $line[1] in
            (show-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(posix)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-password)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(session)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-session-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(ssh)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__ssh_commands" \
"*::: :->ssh" \
&& ret=0

    case $state in
    (ssh)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-ssh-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(validity)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__validity_commands" \
"*::: :->validity" \
&& ret=0

    case $state in
    (validity)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-validity-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(certificate)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__person__help__certificate_commands" \
"*::: :->certificate" \
&& ret=0

    case $state in
    (certificate)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-person-help-certificate-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(group)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__group_commands" \
"*::: :->group" \
&& ret=0

    case $state in
    (group)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name -- The name of the group:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name -- The name of the group:_default' \
'::entry_managed_by -- Optional name/spn of a group that have entry manager rights over this group:_default' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(list-members)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(set-members)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
'*::members:_default' \
&& ret=0
;;
(set-mail)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
'*::mail:_default' \
&& ret=0
;;
(set-description)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
'::description:_default' \
&& ret=0
;;
(set-entry-manager)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name -- The name of the group:_default' \
':entry_managed_by -- Optional name/spn of a group that have entry manager rights over this group:_default' \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name -- The name of the group:_default' \
':new_name -- The new name of the group:_default' \
&& ret=0
;;
(purge-members)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(add-members)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
'*::members:_default' \
&& ret=0
;;
(remove-members)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
'*::members:_default' \
&& ret=0
;;
(posix)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__group__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
'--gidnumber=[]:GIDNUMBER:_default' \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':group_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__group__posix__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-posix-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(account-policy)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__group__account-policy_commands" \
"*::: :->account-policy" \
&& ret=0

    case $state in
    (account-policy)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-account-policy-command-$line[1]:"
        case $line[1] in
            (enable)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(auth-expiry)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':expiry:_default' \
&& ret=0
;;
(credential-type-minimum)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':value:(any mfa passkey attested_passkey)' \
&& ret=0
;;
(password-minimum-length)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':length:_default' \
&& ret=0
;;
(privilege-expiry)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':expiry:_default' \
&& ret=0
;;
(webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':attestation_ca_list_json_file:_files' \
&& ret=0
;;
(limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':maximum:_default' \
&& ret=0
;;
(limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':maximum:_default' \
&& ret=0
;;
(allow-primary-cred-fallback)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':allow:(true false)' \
&& ret=0
;;
(reset-auth-expiry)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(reset-password-minimum-length)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(reset-privilege-expiry)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(reset-webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(reset-limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(reset-limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__group__account-policy__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-account-policy-help-command-$line[1]:"
        case $line[1] in
            (enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(auth-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(credential-type-minimum)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(password-minimum-length)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(privilege-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(allow-primary-cred-fallback)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-auth-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-password-minimum-length)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-privilege-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__group__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-mail)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-description)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-entry-manager)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(purge-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(posix)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__group__help__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-help-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(account-policy)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__group__help__account-policy_commands" \
"*::: :->account-policy" \
&& ret=0

    case $state in
    (account-policy)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-group-help-account-policy-command-$line[1]:"
        case $line[1] in
            (enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(auth-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(credential-type-minimum)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(password-minimum-length)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(privilege-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(allow-primary-cred-fallback)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-auth-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-password-minimum-length)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-privilege-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(service-account)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account_commands" \
"*::: :->service-account" \
&& ret=0

    case $state in
    (service-account)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-command-$line[1]:"
        case $line[1] in
            (credential)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account__credential_commands" \
"*::: :->credential" \
&& ret=0

    case $state in
    (credential)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-credential-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__credential__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-credential-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(api-token)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account__api-token_commands" \
"*::: :->api-token" \
&& ret=0

    case $state in
    (api-token)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-api-token-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'--rw[]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':label -- A string describing the token. This is not used to identify the token, it is only for human description of the tokens purpose:_default' \
'::expiry -- An optional rfc3339 time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00". After this time the api token will no longer be valid:_default' \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':token-id -- The UUID of the token to destroy:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__api-token__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-api-token-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(posix)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
'--gidnumber=[]:GIDNUMBER:_default' \
'--shell=[Set the user'\''s login shell]:SHELL:_default' \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__posix__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-posix-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(session)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-session-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':session-id -- The UUID of the token to destroy:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__session__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-session-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(ssh)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account__ssh_commands" \
"*::: :->ssh" \
&& ret=0

    case $state in
    (ssh)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-ssh-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':tag:_default' \
':pubkey:_default' \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':tag:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__ssh__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-ssh-help-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':display-name:_default' \
':entry-managed-by:_default' \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
'-n+[Set the account name for the service account.]:NEWNAME:_default' \
'--newname=[Set the account name for the service account.]:NEWNAME:_default' \
'-i+[Set the display name for the service account.]:DISPLAYNAME:_default' \
'--displayname=[Set the display name for the service account.]:DISPLAYNAME:_default' \
'-e+[Set the entry manager for the service account.]:ENTRY_MANAGED_BY:_default' \
'--entry-managed-by=[Set the entry manager for the service account.]:ENTRY_MANAGED_BY:_default' \
'*-m+[Set the mail address, can be set multiple times for multiple addresses. The first listed mail address is the '\''primary'\'']:MAIL:_default' \
'*--mail=[Set the mail address, can be set multiple times for multiple addresses. The first listed mail address is the '\''primary'\'']:MAIL:_default' \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(validity)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__service-account__validity_commands" \
"*::: :->validity" \
&& ret=0

    case $state in
    (validity)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-validity-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':datetime -- This accepts multiple options\:
- An RFC3339 time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00"
- One of "any", "clear" or "never" to remove account expiry.
- "epoch" to set the expiry to the UNIX epoch
- "now" to expire immediately (this will affect authentication with Kanidm, but external systems may not be aware of the change until next time it'\''s validated, typically ~15 minutes):_default' \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':datetime -- An rfc3339 time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00" or the word "any", "clear" to remove valid from enforcement:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__validity__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-validity-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(into-person)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-command-$line[1]:"
        case $line[1] in
            (credential)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help__credential_commands" \
"*::: :->credential" \
&& ret=0

    case $state in
    (credential)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-credential-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(api-token)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help__api-token_commands" \
"*::: :->api-token" \
&& ret=0

    case $state in
    (api-token)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-api-token-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(posix)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(session)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-session-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(ssh)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help__ssh_commands" \
"*::: :->ssh" \
&& ret=0

    case $state in
    (ssh)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-ssh-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(validity)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__service-account__help__validity_commands" \
"*::: :->validity" \
&& ret=0

    case $state in
    (validity)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-service-account-help-validity-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(into-person)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(graph)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':graph_type:(graphviz mermaid mermaid-elk)' \
'*::filter:(group builtin-group service-account person)' \
&& ret=0
;;
(schema)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__schema_commands" \
"*::: :->schema" \
&& ret=0

    case $state in
    (schema)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-command-$line[1]:"
        case $line[1] in
            (class)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__schema__class_commands" \
"*::: :->class" \
&& ret=0

    case $state in
    (class)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-class-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':query:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__schema__class__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-class-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(attribute)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__schema__attribute_commands" \
"*::: :->attribute" \
&& ret=0

    case $state in
    (attribute)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-attribute-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':query:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__schema__attribute__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-attribute-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(attr)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__schema__attribute_commands" \
"*::: :->attribute" \
&& ret=0

    case $state in
    (attribute)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-attribute-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':query:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__schema__attribute__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-attribute-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__schema__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-help-command-$line[1]:"
        case $line[1] in
            (class)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__schema__help__class_commands" \
"*::: :->class" \
&& ret=0

    case $state in
    (class)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-help-class-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(attribute)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__schema__help__attribute_commands" \
"*::: :->attribute" \
&& ret=0

    case $state in
    (attribute)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-schema-help-attribute-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(system)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system_commands" \
"*::: :->system" \
&& ret=0

    case $state in
    (system)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-command-$line[1]:"
        case $line[1] in
            (pw-badlist)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system__pw-badlist_commands" \
"*::: :->pw-badlist" \
&& ret=0

    case $state in
    (pw-badlist)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-pw-badlist-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(upload)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-n[Perform a dry run and display the list that would have been uploaded instead]' \
'--dryrun[Perform a dry run and display the list that would have been uploaded instead]' \
'-h[Print help]' \
'--help[Print help]' \
'*::paths:_files' \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
'*::paths:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__pw-badlist__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-pw-badlist-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(upload)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(denied-names)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system__denied-names_commands" \
"*::: :->denied-names" \
&& ret=0

    case $state in
    (denied-names)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-denied-names-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(append)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
'*::names:_default' \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
'*::names:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__denied-names__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-denied-names-help-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(append)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(oauth2)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system__oauth2_commands" \
"*::: :->oauth2" \
&& ret=0

    case $state in
    (oauth2)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-oauth2-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':displayname:_default' \
':origin:_default' \
&& ret=0
;;
(create-public)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name:_default' \
':displayname:_default' \
':origin:_default' \
&& ret=0
;;
(update-scope-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':group:_default' \
'*::scopes:_default' \
&& ret=0
;;
(create-scope-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':group:_default' \
'*::scopes:_default' \
&& ret=0
;;
(delete-scope-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':group:_default' \
&& ret=0
;;
(update-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':group:_default' \
'*::scopes:_default' \
&& ret=0
;;
(create-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':group:_default' \
'*::scopes:_default' \
&& ret=0
;;
(delete-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':group:_default' \
&& ret=0
;;
(update-claim-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':claim_name:_default' \
':group:_default' \
'*::values:_default' \
&& ret=0
;;
(create-claim-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':claim_name:_default' \
':group:_default' \
'*::values:_default' \
&& ret=0
;;
(update-claim-map-join)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':claim_name:_default' \
':join -- The join strategy. Valid values are csv (comma separated value), ssv (space separated value) and array:(csv ssv array)' \
&& ret=0
;;
(delete-claim-map)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':claim_name:_default' \
':group:_default' \
&& ret=0
;;
(reset-basic-secret)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(show-basic-secret)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(set-displayname)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':displayname:_default' \
&& ret=0
;;
(set-name)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':newname:_default' \
&& ret=0
;;
(set-landing-url)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':landing-url:_default' \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':file-path -- A local file path to an image to use as the icon for this OAuth2 client:_files' \
'::image-type -- The type of image being uploaded:(png jpg gif svg webp)' \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(add-redirect-url)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':url:_default' \
&& ret=0
;;
(remove-redirect-url)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':url:_default' \
&& ret=0
;;
(enable-pkce)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(warning-insecure-client-disable-pkce)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(warning-enable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(disable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(enable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(disable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(enable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(disable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(prefer-short-username)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(prefer-spn-username)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(rotate-cryptographic-keys)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':rotate_at:_default' \
&& ret=0
;;
(revoke-cryptographic-key)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
':key_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__oauth2__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-oauth2-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create-public)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-claim-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-claim-map-join)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-claim-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-basic-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show-basic-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-displayname)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-name)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-landing-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-pkce)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(warning-insecure-client-disable-pkce)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(warning-enable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prefer-short-username)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prefer-spn-username)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rotate-cryptographic-keys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revoke-cryptographic-key)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(domain)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system__domain_commands" \
"*::: :->domain" \
&& ret=0

    case $state in
    (domain)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-domain-command-$line[1]:"
        case $line[1] in
            (set-displayname)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':new-display-name:_default' \
&& ret=0
;;
(set-ldap-queryable-attrs)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':maximum-queryable-attrs:_default' \
&& ret=0
;;
(set-ldap-basedn)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':new-basedn:_default' \
&& ret=0
;;
(set-ldap-allow-unix-password-bind)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':allow:(true false)' \
&& ret=0
;;
(set-allow-easter-eggs)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':allow:(true false)' \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(revoke-key)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':key_id:_default' \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':file-path:_files' \
'::image-type:(png jpg gif svg webp)' \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__domain__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-domain-help-command-$line[1]:"
        case $line[1] in
            (set-displayname)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-queryable-attrs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-basedn)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-allow-unix-password-bind)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-allow-easter-eggs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revoke-key)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(sync)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system__sync_commands" \
"*::: :->sync" \
&& ret=0

    case $state in
    (sync)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-sync-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(set-credential-portal)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
'::url:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
'::description:_default' \
&& ret=0
;;
(generate-token)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
':label:_default' \
&& ret=0
;;
(destroy-token)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(set-yield-attributes)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
'*::attributes:_default' \
&& ret=0
;;
(force-refresh)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(finalise)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(terminate)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':account_id:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__sync__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-sync-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-credential-portal)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-yield-attributes)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(force-refresh)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(finalise)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(terminate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(api)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__system__api_commands" \
"*::: :->api" \
&& ret=0

    case $state in
    (api)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-api-command-$line[1]:"
        case $line[1] in
            (download-schema)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-f[Force overwriting the file if it exists]' \
'--force[Force overwriting the file if it exists]' \
'-h[Print help]' \
'--help[Print help]' \
'::filename -- Where to put the file, defaults to ./kanidm-openapi.json:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__api__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-api-help-command-$line[1]:"
        case $line[1] in
            (download-schema)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-command-$line[1]:"
        case $line[1] in
            (pw-badlist)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help__pw-badlist_commands" \
"*::: :->pw-badlist" \
&& ret=0

    case $state in
    (pw-badlist)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-pw-badlist-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(upload)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(denied-names)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help__denied-names_commands" \
"*::: :->denied-names" \
&& ret=0

    case $state in
    (denied-names)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-denied-names-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(append)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(oauth2)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help__oauth2_commands" \
"*::: :->oauth2" \
&& ret=0

    case $state in
    (oauth2)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-oauth2-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create-public)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-claim-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-claim-map-join)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-claim-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-basic-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show-basic-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-displayname)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-name)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-landing-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-pkce)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(warning-insecure-client-disable-pkce)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(warning-enable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prefer-short-username)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prefer-spn-username)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rotate-cryptographic-keys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revoke-cryptographic-key)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(domain)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help__domain_commands" \
"*::: :->domain" \
&& ret=0

    case $state in
    (domain)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-domain-command-$line[1]:"
        case $line[1] in
            (set-displayname)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-queryable-attrs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-basedn)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-allow-unix-password-bind)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-allow-easter-eggs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revoke-key)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(sync)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help__sync_commands" \
"*::: :->sync" \
&& ret=0

    case $state in
    (sync)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-sync-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-credential-portal)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-yield-attributes)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(force-refresh)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(finalise)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(terminate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(api)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__system__help__api_commands" \
"*::: :->api" \
&& ret=0

    case $state in
    (api)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-system-help-api-command-$line[1]:"
        case $line[1] in
            (download-schema)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(recycle-bin)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__recycle-bin_commands" \
"*::: :->recycle-bin" \
&& ret=0

    case $state in
    (recycle-bin)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-recycle-bin-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(revive)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':name:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__recycle-bin__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-recycle-bin-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revive)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(raw)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_kanidm__raw_commands" \
"*::: :->raw" \
&& ret=0

    case $state in
    (raw)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-raw-command-$line[1]:"
        case $line[1] in
            (search)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':filter:_default' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':file:_files' \
&& ret=0
;;
(modify)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':filter:_default' \
':file:_files' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-I+[Select the instance name you wish to connect to]:INSTANCE:_default' \
'--instance=[Select the instance name you wish to connect to]:INSTANCE:_default' \
'-H+[The URL of the kanidm instance]:ADDR:_default' \
'--url=[The URL of the kanidm instance]:ADDR:_default' \
'-D+[User which will initiate requests]:USERNAME:_default' \
'--name=[User which will initiate requests]:USERNAME:_default' \
'-C+[Path to a CA certificate file]:CA_PATH:_files' \
'--ca=[Path to a CA certificate file]:CA_PATH:_files' \
'-o+[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'--output=[Log format (still in very early development)]:OUTPUT_MODE:_default' \
'-t+[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'--token-cache-path=[Path to a file to cache tokens in, defaults to ~/.cache/kanidm_tokens]:TOKEN_CACHE_PATH:_default' \
'-d[Enable debugging of the kanidm tool]' \
'--debug[Enable debugging of the kanidm tool]' \
'--skip-hostname-verification[Skip hostname verification]' \
'--accept-invalid-certs[Don'\''t verify CA]' \
'-h[Print help]' \
'--help[Print help]' \
':filter:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__raw__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-raw-help-command-$line[1]:"
        case $line[1] in
            (search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(modify)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(version)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-command-$line[1]:"
        case $line[1] in
            (login)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reauth)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(logout)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(session)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-session-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(cleanup)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(self)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__self_commands" \
"*::: :->self" \
&& ret=0

    case $state in
    (self)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-self-command-$line[1]:"
        case $line[1] in
            (identify-user)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(whoami)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(person)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person_commands" \
"*::: :->person" \
&& ret=0

    case $state in
    (person)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-command-$line[1]:"
        case $line[1] in
            (credential)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__credential_commands" \
"*::: :->credential" \
&& ret=0

    case $state in
    (credential)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-credential-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(use-reset-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create-reset-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(radius)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__radius_commands" \
"*::: :->radius" \
&& ret=0

    case $state in
    (radius)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-radius-command-$line[1]:"
        case $line[1] in
            (show-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(posix)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-password)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(session)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-session-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(ssh)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__ssh_commands" \
"*::: :->ssh" \
&& ret=0

    case $state in
    (ssh)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-ssh-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(validity)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__validity_commands" \
"*::: :->validity" \
&& ret=0

    case $state in
    (validity)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-validity-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(certificate)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__person__certificate_commands" \
"*::: :->certificate" \
&& ret=0

    case $state in
    (certificate)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-person-certificate-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(group)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__group_commands" \
"*::: :->group" \
&& ret=0

    case $state in
    (group)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-group-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-mail)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-description)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-entry-manager)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(purge-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-members)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(posix)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__group__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-group-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(account-policy)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__group__account-policy_commands" \
"*::: :->account-policy" \
&& ret=0

    case $state in
    (account-policy)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-group-account-policy-command-$line[1]:"
        case $line[1] in
            (enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(auth-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(credential-type-minimum)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(password-minimum-length)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(privilege-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(allow-primary-cred-fallback)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-auth-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-password-minimum-length)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-privilege-expiry)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-webauthn-attestation-ca-list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-limit-search-max-results)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-limit-search-max-filter-test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(service-account)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account_commands" \
"*::: :->service-account" \
&& ret=0

    case $state in
    (service-account)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-command-$line[1]:"
        case $line[1] in
            (credential)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account__credential_commands" \
"*::: :->credential" \
&& ret=0

    case $state in
    (credential)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-credential-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(api-token)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account__api-token_commands" \
"*::: :->api-token" \
&& ret=0

    case $state in
    (api-token)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-api-token-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(posix)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account__posix_commands" \
"*::: :->posix" \
&& ret=0

    case $state in
    (posix)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-posix-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-gidnumber)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(session)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-session-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(ssh)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account__ssh_commands" \
"*::: :->ssh" \
&& ret=0

    case $state in
    (ssh)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-ssh-command-$line[1]:"
        case $line[1] in
            (list-publickeys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-publickey)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(validity)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__service-account__validity_commands" \
"*::: :->validity" \
&& ret=0

    case $state in
    (validity)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-service-account-validity-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(expire-at)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(begin-from)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(into-person)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(graph)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(schema)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__schema_commands" \
"*::: :->schema" \
&& ret=0

    case $state in
    (schema)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-schema-command-$line[1]:"
        case $line[1] in
            (class)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__schema__class_commands" \
"*::: :->class" \
&& ret=0

    case $state in
    (class)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-schema-class-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(attribute)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__schema__attribute_commands" \
"*::: :->attribute" \
&& ret=0

    case $state in
    (attribute)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-schema-attribute-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(system)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system_commands" \
"*::: :->system" \
&& ret=0

    case $state in
    (system)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-command-$line[1]:"
        case $line[1] in
            (pw-badlist)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system__pw-badlist_commands" \
"*::: :->pw-badlist" \
&& ret=0

    case $state in
    (pw-badlist)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-pw-badlist-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(upload)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(denied-names)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system__denied-names_commands" \
"*::: :->denied-names" \
&& ret=0

    case $state in
    (denied-names)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-denied-names-command-$line[1]:"
        case $line[1] in
            (show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(append)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(oauth2)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system__oauth2_commands" \
"*::: :->oauth2" \
&& ret=0

    case $state in
    (oauth2)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-oauth2-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create-public)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-sup-scope-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-claim-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update-claim-map-join)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete-claim-map)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-basic-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show-basic-secret)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-displayname)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-name)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-landing-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-pkce)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(warning-insecure-client-disable-pkce)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(warning-enable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-legacy-crypto)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-strict-redirect-url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable-localhost-redirects)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prefer-short-username)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prefer-spn-username)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rotate-cryptographic-keys)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revoke-cryptographic-key)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(domain)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system__domain_commands" \
"*::: :->domain" \
&& ret=0

    case $state in
    (domain)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-domain-command-$line[1]:"
        case $line[1] in
            (set-displayname)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-queryable-attrs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-basedn)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-ldap-allow-unix-password-bind)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-allow-easter-eggs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revoke-key)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove-image)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(sync)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system__sync_commands" \
"*::: :->sync" \
&& ret=0

    case $state in
    (sync)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-sync-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-credential-portal)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(destroy-token)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-yield-attributes)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(force-refresh)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(finalise)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(terminate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(api)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__system__api_commands" \
"*::: :->api" \
&& ret=0

    case $state in
    (api)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-system-api-command-$line[1]:"
        case $line[1] in
            (download-schema)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(recycle-bin)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__recycle-bin_commands" \
"*::: :->recycle-bin" \
&& ret=0

    case $state in
    (recycle-bin)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-recycle-bin-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(get)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revive)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(raw)
_arguments "${_arguments_options[@]}" : \
":: :_kanidm__help__raw_commands" \
"*::: :->raw" \
&& ret=0

    case $state in
    (raw)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:kanidm-help-raw-command-$line[1]:"
        case $line[1] in
            (search)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(modify)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(version)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
}

(( $+functions[_kanidm_commands] )) ||
_kanidm_commands() {
    local commands; commands=(
'login:Login to an account to use with future cli operations' \
'reauth:Reauthenticate to access privileged functions of this account for a short period' \
'logout:Logout of an active cli session' \
'session:Manage active cli sessions' \
'self:Actions for the current authenticated account' \
'person:Actions to manage and view person (user) accounts' \
'group:Actions to manage groups' \
'service-account:Actions to manage and view service accounts' \
'graph:Prints graphviz dot file of all groups' \
'schema:Schema management operations' \
'system:System configuration operations' \
'recycle-bin:Recycle Bin operations' \
'raw:Unsafe - low level, raw database queries and operations' \
'version:Print the program version and exit' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm commands' commands "$@"
}
(( $+functions[_kanidm__graph_commands] )) ||
_kanidm__graph_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm graph commands' commands "$@"
}
(( $+functions[_kanidm__group_commands] )) ||
_kanidm__group_commands() {
    local commands; commands=(
'list:List all groups' \
'get:View a specific group' \
'search:Search a group by name' \
'create:Create a new group' \
'delete:Delete a group' \
'list-members:List the members of a group' \
'set-members:Set the exact list of members that this group should contain, removing any not listed in the set operation' \
'set-mail:Set the exact list of mail addresses that this group is associated with. The first mail address in the list is the \`primary\` and the remainder are aliases. Setting an empty list will clear the mail attribute' \
'set-description:Set the description of this group. If no description is provided, the value is cleared' \
'set-entry-manager:Set a new entry-managed-by for this group' \
'rename:Rename an existing group' \
'purge-members:Delete all members of a group' \
'add-members:Add new members to a group' \
'remove-members:Remove the named members from this group' \
'posix:Manage posix extensions for this group allowing groups to be used on unix/linux systems' \
'account-policy:Manage the policies that apply to members of this group' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm group commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy_commands] )) ||
_kanidm__group__account-policy_commands() {
    local commands; commands=(
'enable:Enable account policy for this group' \
'auth-expiry:Set the maximum time for session expiry in seconds' \
'credential-type-minimum:Set the minimum credential class that members may authenticate with. Valid values in order of weakest to strongest are\: "any" "mfa" "passkey" "attested_passkey"' \
'password-minimum-length:Set the minimum character length of passwords for accounts' \
'privilege-expiry:Set the maximum time for privilege session expiry in seconds' \
'webauthn-attestation-ca-list:The WebAuthn attestation CA list that should be enforced on members of this group. Prevents use of passkeys that are not in this list. To create this list, use \`fido-mds-tool\` from <https\://crates.io/crates/fido-mds-tool>' \
'limit-search-max-results:Sets the maximum number of entries that may be returned in a search operation' \
'limit-search-max-filter-test:Sets the maximum number of entries that are examined during a partially indexed search. This does not affect fully indexed searches. If in doubt, set this to 1.5x limit-search-max-results' \
'allow-primary-cred-fallback:Sets whether during login the primary password can be used as a fallback if no posix password has been defined' \
'reset-auth-expiry:Reset the maximum time for session expiry to its default value' \
'reset-password-minimum-length:Reset the minimum character length of passwords to its default value' \
'reset-privilege-expiry:Reset the maximum time for privilege session expiry to its default value' \
'reset-webauthn-attestation-ca-list:Reset the WebAuthn attestation CA list to its default value allowing any passkey to be used by members of this group' \
'reset-limit-search-max-results:Reset the searche maxmium results limit to its default value' \
'reset-limit-search-max-filter-test:Reset the max filter test limit to its default value' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm group account-policy commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__allow-primary-cred-fallback_commands] )) ||
_kanidm__group__account-policy__allow-primary-cred-fallback_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy allow-primary-cred-fallback commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__auth-expiry_commands] )) ||
_kanidm__group__account-policy__auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__credential-type-minimum_commands] )) ||
_kanidm__group__account-policy__credential-type-minimum_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy credential-type-minimum commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__enable_commands] )) ||
_kanidm__group__account-policy__enable_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy enable commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help_commands] )) ||
_kanidm__group__account-policy__help_commands() {
    local commands; commands=(
'enable:Enable account policy for this group' \
'auth-expiry:Set the maximum time for session expiry in seconds' \
'credential-type-minimum:Set the minimum credential class that members may authenticate with. Valid values in order of weakest to strongest are\: "any" "mfa" "passkey" "attested_passkey"' \
'password-minimum-length:Set the minimum character length of passwords for accounts' \
'privilege-expiry:Set the maximum time for privilege session expiry in seconds' \
'webauthn-attestation-ca-list:The WebAuthn attestation CA list that should be enforced on members of this group. Prevents use of passkeys that are not in this list. To create this list, use \`fido-mds-tool\` from <https\://crates.io/crates/fido-mds-tool>' \
'limit-search-max-results:Sets the maximum number of entries that may be returned in a search operation' \
'limit-search-max-filter-test:Sets the maximum number of entries that are examined during a partially indexed search. This does not affect fully indexed searches. If in doubt, set this to 1.5x limit-search-max-results' \
'allow-primary-cred-fallback:Sets whether during login the primary password can be used as a fallback if no posix password has been defined' \
'reset-auth-expiry:Reset the maximum time for session expiry to its default value' \
'reset-password-minimum-length:Reset the minimum character length of passwords to its default value' \
'reset-privilege-expiry:Reset the maximum time for privilege session expiry to its default value' \
'reset-webauthn-attestation-ca-list:Reset the WebAuthn attestation CA list to its default value allowing any passkey to be used by members of this group' \
'reset-limit-search-max-results:Reset the searche maxmium results limit to its default value' \
'reset-limit-search-max-filter-test:Reset the max filter test limit to its default value' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm group account-policy help commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__allow-primary-cred-fallback_commands] )) ||
_kanidm__group__account-policy__help__allow-primary-cred-fallback_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help allow-primary-cred-fallback commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__auth-expiry_commands] )) ||
_kanidm__group__account-policy__help__auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__credential-type-minimum_commands] )) ||
_kanidm__group__account-policy__help__credential-type-minimum_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help credential-type-minimum commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__enable_commands] )) ||
_kanidm__group__account-policy__help__enable_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help enable commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__help_commands] )) ||
_kanidm__group__account-policy__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help help commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__limit-search-max-filter-test_commands] )) ||
_kanidm__group__account-policy__help__limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__limit-search-max-results_commands] )) ||
_kanidm__group__account-policy__help__limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__password-minimum-length_commands] )) ||
_kanidm__group__account-policy__help__password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__privilege-expiry_commands] )) ||
_kanidm__group__account-policy__help__privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__reset-auth-expiry_commands] )) ||
_kanidm__group__account-policy__help__reset-auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help reset-auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__reset-limit-search-max-filter-test_commands] )) ||
_kanidm__group__account-policy__help__reset-limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help reset-limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__reset-limit-search-max-results_commands] )) ||
_kanidm__group__account-policy__help__reset-limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help reset-limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__reset-password-minimum-length_commands] )) ||
_kanidm__group__account-policy__help__reset-password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help reset-password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__reset-privilege-expiry_commands] )) ||
_kanidm__group__account-policy__help__reset-privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help reset-privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__reset-webauthn-attestation-ca-list_commands] )) ||
_kanidm__group__account-policy__help__reset-webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help reset-webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__help__webauthn-attestation-ca-list_commands] )) ||
_kanidm__group__account-policy__help__webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy help webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__limit-search-max-filter-test_commands] )) ||
_kanidm__group__account-policy__limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__limit-search-max-results_commands] )) ||
_kanidm__group__account-policy__limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__password-minimum-length_commands] )) ||
_kanidm__group__account-policy__password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__privilege-expiry_commands] )) ||
_kanidm__group__account-policy__privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__reset-auth-expiry_commands] )) ||
_kanidm__group__account-policy__reset-auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy reset-auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__reset-limit-search-max-filter-test_commands] )) ||
_kanidm__group__account-policy__reset-limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy reset-limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__reset-limit-search-max-results_commands] )) ||
_kanidm__group__account-policy__reset-limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy reset-limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__reset-password-minimum-length_commands] )) ||
_kanidm__group__account-policy__reset-password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy reset-password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__reset-privilege-expiry_commands] )) ||
_kanidm__group__account-policy__reset-privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy reset-privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__reset-webauthn-attestation-ca-list_commands] )) ||
_kanidm__group__account-policy__reset-webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy reset-webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__group__account-policy__webauthn-attestation-ca-list_commands] )) ||
_kanidm__group__account-policy__webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group account-policy webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__group__add-members_commands] )) ||
_kanidm__group__add-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group add-members commands' commands "$@"
}
(( $+functions[_kanidm__group__create_commands] )) ||
_kanidm__group__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group create commands' commands "$@"
}
(( $+functions[_kanidm__group__delete_commands] )) ||
_kanidm__group__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group delete commands' commands "$@"
}
(( $+functions[_kanidm__group__get_commands] )) ||
_kanidm__group__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group get commands' commands "$@"
}
(( $+functions[_kanidm__group__help_commands] )) ||
_kanidm__group__help_commands() {
    local commands; commands=(
'list:List all groups' \
'get:View a specific group' \
'search:Search a group by name' \
'create:Create a new group' \
'delete:Delete a group' \
'list-members:List the members of a group' \
'set-members:Set the exact list of members that this group should contain, removing any not listed in the set operation' \
'set-mail:Set the exact list of mail addresses that this group is associated with. The first mail address in the list is the \`primary\` and the remainder are aliases. Setting an empty list will clear the mail attribute' \
'set-description:Set the description of this group. If no description is provided, the value is cleared' \
'set-entry-manager:Set a new entry-managed-by for this group' \
'rename:Rename an existing group' \
'purge-members:Delete all members of a group' \
'add-members:Add new members to a group' \
'remove-members:Remove the named members from this group' \
'posix:Manage posix extensions for this group allowing groups to be used on unix/linux systems' \
'account-policy:Manage the policies that apply to members of this group' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm group help commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy_commands] )) ||
_kanidm__group__help__account-policy_commands() {
    local commands; commands=(
'enable:Enable account policy for this group' \
'auth-expiry:Set the maximum time for session expiry in seconds' \
'credential-type-minimum:Set the minimum credential class that members may authenticate with. Valid values in order of weakest to strongest are\: "any" "mfa" "passkey" "attested_passkey"' \
'password-minimum-length:Set the minimum character length of passwords for accounts' \
'privilege-expiry:Set the maximum time for privilege session expiry in seconds' \
'webauthn-attestation-ca-list:The WebAuthn attestation CA list that should be enforced on members of this group. Prevents use of passkeys that are not in this list. To create this list, use \`fido-mds-tool\` from <https\://crates.io/crates/fido-mds-tool>' \
'limit-search-max-results:Sets the maximum number of entries that may be returned in a search operation' \
'limit-search-max-filter-test:Sets the maximum number of entries that are examined during a partially indexed search. This does not affect fully indexed searches. If in doubt, set this to 1.5x limit-search-max-results' \
'allow-primary-cred-fallback:Sets whether during login the primary password can be used as a fallback if no posix password has been defined' \
'reset-auth-expiry:Reset the maximum time for session expiry to its default value' \
'reset-password-minimum-length:Reset the minimum character length of passwords to its default value' \
'reset-privilege-expiry:Reset the maximum time for privilege session expiry to its default value' \
'reset-webauthn-attestation-ca-list:Reset the WebAuthn attestation CA list to its default value allowing any passkey to be used by members of this group' \
'reset-limit-search-max-results:Reset the searche maxmium results limit to its default value' \
'reset-limit-search-max-filter-test:Reset the max filter test limit to its default value' \
    )
    _describe -t commands 'kanidm group help account-policy commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__allow-primary-cred-fallback_commands] )) ||
_kanidm__group__help__account-policy__allow-primary-cred-fallback_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy allow-primary-cred-fallback commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__auth-expiry_commands] )) ||
_kanidm__group__help__account-policy__auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__credential-type-minimum_commands] )) ||
_kanidm__group__help__account-policy__credential-type-minimum_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy credential-type-minimum commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__enable_commands] )) ||
_kanidm__group__help__account-policy__enable_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy enable commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__limit-search-max-filter-test_commands] )) ||
_kanidm__group__help__account-policy__limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__limit-search-max-results_commands] )) ||
_kanidm__group__help__account-policy__limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__password-minimum-length_commands] )) ||
_kanidm__group__help__account-policy__password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__privilege-expiry_commands] )) ||
_kanidm__group__help__account-policy__privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__reset-auth-expiry_commands] )) ||
_kanidm__group__help__account-policy__reset-auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy reset-auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__reset-limit-search-max-filter-test_commands] )) ||
_kanidm__group__help__account-policy__reset-limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy reset-limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__reset-limit-search-max-results_commands] )) ||
_kanidm__group__help__account-policy__reset-limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy reset-limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__reset-password-minimum-length_commands] )) ||
_kanidm__group__help__account-policy__reset-password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy reset-password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__reset-privilege-expiry_commands] )) ||
_kanidm__group__help__account-policy__reset-privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy reset-privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__reset-webauthn-attestation-ca-list_commands] )) ||
_kanidm__group__help__account-policy__reset-webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy reset-webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__group__help__account-policy__webauthn-attestation-ca-list_commands] )) ||
_kanidm__group__help__account-policy__webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help account-policy webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__group__help__add-members_commands] )) ||
_kanidm__group__help__add-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help add-members commands' commands "$@"
}
(( $+functions[_kanidm__group__help__create_commands] )) ||
_kanidm__group__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help create commands' commands "$@"
}
(( $+functions[_kanidm__group__help__delete_commands] )) ||
_kanidm__group__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help delete commands' commands "$@"
}
(( $+functions[_kanidm__group__help__get_commands] )) ||
_kanidm__group__help__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help get commands' commands "$@"
}
(( $+functions[_kanidm__group__help__help_commands] )) ||
_kanidm__group__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help help commands' commands "$@"
}
(( $+functions[_kanidm__group__help__list_commands] )) ||
_kanidm__group__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help list commands' commands "$@"
}
(( $+functions[_kanidm__group__help__list-members_commands] )) ||
_kanidm__group__help__list-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help list-members commands' commands "$@"
}
(( $+functions[_kanidm__group__help__posix_commands] )) ||
_kanidm__group__help__posix_commands() {
    local commands; commands=(
'show:Show details of a specific posix group' \
'set:Setup posix group properties, or alter them' \
'reset-gidnumber:Reset the gidnumber of this group to the generated default' \
    )
    _describe -t commands 'kanidm group help posix commands' commands "$@"
}
(( $+functions[_kanidm__group__help__posix__reset-gidnumber_commands] )) ||
_kanidm__group__help__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__group__help__posix__set_commands] )) ||
_kanidm__group__help__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help posix set commands' commands "$@"
}
(( $+functions[_kanidm__group__help__posix__show_commands] )) ||
_kanidm__group__help__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help posix show commands' commands "$@"
}
(( $+functions[_kanidm__group__help__purge-members_commands] )) ||
_kanidm__group__help__purge-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help purge-members commands' commands "$@"
}
(( $+functions[_kanidm__group__help__remove-members_commands] )) ||
_kanidm__group__help__remove-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help remove-members commands' commands "$@"
}
(( $+functions[_kanidm__group__help__rename_commands] )) ||
_kanidm__group__help__rename_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help rename commands' commands "$@"
}
(( $+functions[_kanidm__group__help__search_commands] )) ||
_kanidm__group__help__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help search commands' commands "$@"
}
(( $+functions[_kanidm__group__help__set-description_commands] )) ||
_kanidm__group__help__set-description_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help set-description commands' commands "$@"
}
(( $+functions[_kanidm__group__help__set-entry-manager_commands] )) ||
_kanidm__group__help__set-entry-manager_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help set-entry-manager commands' commands "$@"
}
(( $+functions[_kanidm__group__help__set-mail_commands] )) ||
_kanidm__group__help__set-mail_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help set-mail commands' commands "$@"
}
(( $+functions[_kanidm__group__help__set-members_commands] )) ||
_kanidm__group__help__set-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group help set-members commands' commands "$@"
}
(( $+functions[_kanidm__group__list_commands] )) ||
_kanidm__group__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group list commands' commands "$@"
}
(( $+functions[_kanidm__group__list-members_commands] )) ||
_kanidm__group__list-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group list-members commands' commands "$@"
}
(( $+functions[_kanidm__group__posix_commands] )) ||
_kanidm__group__posix_commands() {
    local commands; commands=(
'show:Show details of a specific posix group' \
'set:Setup posix group properties, or alter them' \
'reset-gidnumber:Reset the gidnumber of this group to the generated default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm group posix commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__help_commands] )) ||
_kanidm__group__posix__help_commands() {
    local commands; commands=(
'show:Show details of a specific posix group' \
'set:Setup posix group properties, or alter them' \
'reset-gidnumber:Reset the gidnumber of this group to the generated default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm group posix help commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__help__help_commands] )) ||
_kanidm__group__posix__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix help help commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__help__reset-gidnumber_commands] )) ||
_kanidm__group__posix__help__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix help reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__help__set_commands] )) ||
_kanidm__group__posix__help__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix help set commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__help__show_commands] )) ||
_kanidm__group__posix__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix help show commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__reset-gidnumber_commands] )) ||
_kanidm__group__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__set_commands] )) ||
_kanidm__group__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix set commands' commands "$@"
}
(( $+functions[_kanidm__group__posix__show_commands] )) ||
_kanidm__group__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group posix show commands' commands "$@"
}
(( $+functions[_kanidm__group__purge-members_commands] )) ||
_kanidm__group__purge-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group purge-members commands' commands "$@"
}
(( $+functions[_kanidm__group__remove-members_commands] )) ||
_kanidm__group__remove-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group remove-members commands' commands "$@"
}
(( $+functions[_kanidm__group__rename_commands] )) ||
_kanidm__group__rename_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group rename commands' commands "$@"
}
(( $+functions[_kanidm__group__search_commands] )) ||
_kanidm__group__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group search commands' commands "$@"
}
(( $+functions[_kanidm__group__set-description_commands] )) ||
_kanidm__group__set-description_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group set-description commands' commands "$@"
}
(( $+functions[_kanidm__group__set-entry-manager_commands] )) ||
_kanidm__group__set-entry-manager_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group set-entry-manager commands' commands "$@"
}
(( $+functions[_kanidm__group__set-mail_commands] )) ||
_kanidm__group__set-mail_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group set-mail commands' commands "$@"
}
(( $+functions[_kanidm__group__set-members_commands] )) ||
_kanidm__group__set-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm group set-members commands' commands "$@"
}
(( $+functions[_kanidm__help_commands] )) ||
_kanidm__help_commands() {
    local commands; commands=(
'login:Login to an account to use with future cli operations' \
'reauth:Reauthenticate to access privileged functions of this account for a short period' \
'logout:Logout of an active cli session' \
'session:Manage active cli sessions' \
'self:Actions for the current authenticated account' \
'person:Actions to manage and view person (user) accounts' \
'group:Actions to manage groups' \
'service-account:Actions to manage and view service accounts' \
'graph:Prints graphviz dot file of all groups' \
'schema:Schema management operations' \
'system:System configuration operations' \
'recycle-bin:Recycle Bin operations' \
'raw:Unsafe - low level, raw database queries and operations' \
'version:Print the program version and exit' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm help commands' commands "$@"
}
(( $+functions[_kanidm__help__graph_commands] )) ||
_kanidm__help__graph_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help graph commands' commands "$@"
}
(( $+functions[_kanidm__help__group_commands] )) ||
_kanidm__help__group_commands() {
    local commands; commands=(
'list:List all groups' \
'get:View a specific group' \
'search:Search a group by name' \
'create:Create a new group' \
'delete:Delete a group' \
'list-members:List the members of a group' \
'set-members:Set the exact list of members that this group should contain, removing any not listed in the set operation' \
'set-mail:Set the exact list of mail addresses that this group is associated with. The first mail address in the list is the \`primary\` and the remainder are aliases. Setting an empty list will clear the mail attribute' \
'set-description:Set the description of this group. If no description is provided, the value is cleared' \
'set-entry-manager:Set a new entry-managed-by for this group' \
'rename:Rename an existing group' \
'purge-members:Delete all members of a group' \
'add-members:Add new members to a group' \
'remove-members:Remove the named members from this group' \
'posix:Manage posix extensions for this group allowing groups to be used on unix/linux systems' \
'account-policy:Manage the policies that apply to members of this group' \
    )
    _describe -t commands 'kanidm help group commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy_commands] )) ||
_kanidm__help__group__account-policy_commands() {
    local commands; commands=(
'enable:Enable account policy for this group' \
'auth-expiry:Set the maximum time for session expiry in seconds' \
'credential-type-minimum:Set the minimum credential class that members may authenticate with. Valid values in order of weakest to strongest are\: "any" "mfa" "passkey" "attested_passkey"' \
'password-minimum-length:Set the minimum character length of passwords for accounts' \
'privilege-expiry:Set the maximum time for privilege session expiry in seconds' \
'webauthn-attestation-ca-list:The WebAuthn attestation CA list that should be enforced on members of this group. Prevents use of passkeys that are not in this list. To create this list, use \`fido-mds-tool\` from <https\://crates.io/crates/fido-mds-tool>' \
'limit-search-max-results:Sets the maximum number of entries that may be returned in a search operation' \
'limit-search-max-filter-test:Sets the maximum number of entries that are examined during a partially indexed search. This does not affect fully indexed searches. If in doubt, set this to 1.5x limit-search-max-results' \
'allow-primary-cred-fallback:Sets whether during login the primary password can be used as a fallback if no posix password has been defined' \
'reset-auth-expiry:Reset the maximum time for session expiry to its default value' \
'reset-password-minimum-length:Reset the minimum character length of passwords to its default value' \
'reset-privilege-expiry:Reset the maximum time for privilege session expiry to its default value' \
'reset-webauthn-attestation-ca-list:Reset the WebAuthn attestation CA list to its default value allowing any passkey to be used by members of this group' \
'reset-limit-search-max-results:Reset the searche maxmium results limit to its default value' \
'reset-limit-search-max-filter-test:Reset the max filter test limit to its default value' \
    )
    _describe -t commands 'kanidm help group account-policy commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__allow-primary-cred-fallback_commands] )) ||
_kanidm__help__group__account-policy__allow-primary-cred-fallback_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy allow-primary-cred-fallback commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__auth-expiry_commands] )) ||
_kanidm__help__group__account-policy__auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__credential-type-minimum_commands] )) ||
_kanidm__help__group__account-policy__credential-type-minimum_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy credential-type-minimum commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__enable_commands] )) ||
_kanidm__help__group__account-policy__enable_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy enable commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__limit-search-max-filter-test_commands] )) ||
_kanidm__help__group__account-policy__limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__limit-search-max-results_commands] )) ||
_kanidm__help__group__account-policy__limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__password-minimum-length_commands] )) ||
_kanidm__help__group__account-policy__password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__privilege-expiry_commands] )) ||
_kanidm__help__group__account-policy__privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__reset-auth-expiry_commands] )) ||
_kanidm__help__group__account-policy__reset-auth-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy reset-auth-expiry commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__reset-limit-search-max-filter-test_commands] )) ||
_kanidm__help__group__account-policy__reset-limit-search-max-filter-test_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy reset-limit-search-max-filter-test commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__reset-limit-search-max-results_commands] )) ||
_kanidm__help__group__account-policy__reset-limit-search-max-results_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy reset-limit-search-max-results commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__reset-password-minimum-length_commands] )) ||
_kanidm__help__group__account-policy__reset-password-minimum-length_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy reset-password-minimum-length commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__reset-privilege-expiry_commands] )) ||
_kanidm__help__group__account-policy__reset-privilege-expiry_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy reset-privilege-expiry commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__reset-webauthn-attestation-ca-list_commands] )) ||
_kanidm__help__group__account-policy__reset-webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy reset-webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__help__group__account-policy__webauthn-attestation-ca-list_commands] )) ||
_kanidm__help__group__account-policy__webauthn-attestation-ca-list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group account-policy webauthn-attestation-ca-list commands' commands "$@"
}
(( $+functions[_kanidm__help__group__add-members_commands] )) ||
_kanidm__help__group__add-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group add-members commands' commands "$@"
}
(( $+functions[_kanidm__help__group__create_commands] )) ||
_kanidm__help__group__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group create commands' commands "$@"
}
(( $+functions[_kanidm__help__group__delete_commands] )) ||
_kanidm__help__group__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group delete commands' commands "$@"
}
(( $+functions[_kanidm__help__group__get_commands] )) ||
_kanidm__help__group__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group get commands' commands "$@"
}
(( $+functions[_kanidm__help__group__list_commands] )) ||
_kanidm__help__group__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group list commands' commands "$@"
}
(( $+functions[_kanidm__help__group__list-members_commands] )) ||
_kanidm__help__group__list-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group list-members commands' commands "$@"
}
(( $+functions[_kanidm__help__group__posix_commands] )) ||
_kanidm__help__group__posix_commands() {
    local commands; commands=(
'show:Show details of a specific posix group' \
'set:Setup posix group properties, or alter them' \
'reset-gidnumber:Reset the gidnumber of this group to the generated default' \
    )
    _describe -t commands 'kanidm help group posix commands' commands "$@"
}
(( $+functions[_kanidm__help__group__posix__reset-gidnumber_commands] )) ||
_kanidm__help__group__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__help__group__posix__set_commands] )) ||
_kanidm__help__group__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group posix set commands' commands "$@"
}
(( $+functions[_kanidm__help__group__posix__show_commands] )) ||
_kanidm__help__group__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group posix show commands' commands "$@"
}
(( $+functions[_kanidm__help__group__purge-members_commands] )) ||
_kanidm__help__group__purge-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group purge-members commands' commands "$@"
}
(( $+functions[_kanidm__help__group__remove-members_commands] )) ||
_kanidm__help__group__remove-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group remove-members commands' commands "$@"
}
(( $+functions[_kanidm__help__group__rename_commands] )) ||
_kanidm__help__group__rename_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group rename commands' commands "$@"
}
(( $+functions[_kanidm__help__group__search_commands] )) ||
_kanidm__help__group__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group search commands' commands "$@"
}
(( $+functions[_kanidm__help__group__set-description_commands] )) ||
_kanidm__help__group__set-description_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group set-description commands' commands "$@"
}
(( $+functions[_kanidm__help__group__set-entry-manager_commands] )) ||
_kanidm__help__group__set-entry-manager_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group set-entry-manager commands' commands "$@"
}
(( $+functions[_kanidm__help__group__set-mail_commands] )) ||
_kanidm__help__group__set-mail_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group set-mail commands' commands "$@"
}
(( $+functions[_kanidm__help__group__set-members_commands] )) ||
_kanidm__help__group__set-members_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help group set-members commands' commands "$@"
}
(( $+functions[_kanidm__help__help_commands] )) ||
_kanidm__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help help commands' commands "$@"
}
(( $+functions[_kanidm__help__login_commands] )) ||
_kanidm__help__login_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help login commands' commands "$@"
}
(( $+functions[_kanidm__help__logout_commands] )) ||
_kanidm__help__logout_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help logout commands' commands "$@"
}
(( $+functions[_kanidm__help__person_commands] )) ||
_kanidm__help__person_commands() {
    local commands; commands=(
'credential:Manage the credentials this person uses for authentication' \
'radius:Manage radius access for this person' \
'posix:Manage posix extensions for this person allowing access to unix/linux systems' \
'session:Manage sessions (user auth tokens) associated to this person' \
'ssh:Manage ssh public key'\''s associated to this person' \
'list:List all persons' \
'get:View a specific person' \
'search:Search persons by name' \
'update:Update a specific person'\''s attributes' \
'create:Create a new person'\''s account' \
'delete:Delete a person'\''s account' \
'validity:Manage a person'\''s account validity, such as expiry time (account lock/unlock)' \
'certificate:' \
    )
    _describe -t commands 'kanidm help person commands' commands "$@"
}
(( $+functions[_kanidm__help__person__certificate_commands] )) ||
_kanidm__help__person__certificate_commands() {
    local commands; commands=(
'status:' \
'create:' \
    )
    _describe -t commands 'kanidm help person certificate commands' commands "$@"
}
(( $+functions[_kanidm__help__person__certificate__create_commands] )) ||
_kanidm__help__person__certificate__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person certificate create commands' commands "$@"
}
(( $+functions[_kanidm__help__person__certificate__status_commands] )) ||
_kanidm__help__person__certificate__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person certificate status commands' commands "$@"
}
(( $+functions[_kanidm__help__person__create_commands] )) ||
_kanidm__help__person__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person create commands' commands "$@"
}
(( $+functions[_kanidm__help__person__credential_commands] )) ||
_kanidm__help__person__credential_commands() {
    local commands; commands=(
'status:Show the status of this accounts credentials' \
'update:Interactively update/change the credentials for an account' \
'use-reset-token:Using a reset token, interactively reset credentials for a user' \
'create-reset-token:Create a reset token that can be given to another person so they can recover or reset their account credentials' \
    )
    _describe -t commands 'kanidm help person credential commands' commands "$@"
}
(( $+functions[_kanidm__help__person__credential__create-reset-token_commands] )) ||
_kanidm__help__person__credential__create-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person credential create-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__help__person__credential__status_commands] )) ||
_kanidm__help__person__credential__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person credential status commands' commands "$@"
}
(( $+functions[_kanidm__help__person__credential__update_commands] )) ||
_kanidm__help__person__credential__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person credential update commands' commands "$@"
}
(( $+functions[_kanidm__help__person__credential__use-reset-token_commands] )) ||
_kanidm__help__person__credential__use-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person credential use-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__help__person__delete_commands] )) ||
_kanidm__help__person__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person delete commands' commands "$@"
}
(( $+functions[_kanidm__help__person__get_commands] )) ||
_kanidm__help__person__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person get commands' commands "$@"
}
(( $+functions[_kanidm__help__person__list_commands] )) ||
_kanidm__help__person__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person list commands' commands "$@"
}
(( $+functions[_kanidm__help__person__posix_commands] )) ||
_kanidm__help__person__posix_commands() {
    local commands; commands=(
'show:' \
'set:' \
'set-password:' \
'reset-gidnumber:Reset the gidnumber of this person to the generated default' \
    )
    _describe -t commands 'kanidm help person posix commands' commands "$@"
}
(( $+functions[_kanidm__help__person__posix__reset-gidnumber_commands] )) ||
_kanidm__help__person__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__help__person__posix__set_commands] )) ||
_kanidm__help__person__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person posix set commands' commands "$@"
}
(( $+functions[_kanidm__help__person__posix__set-password_commands] )) ||
_kanidm__help__person__posix__set-password_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person posix set-password commands' commands "$@"
}
(( $+functions[_kanidm__help__person__posix__show_commands] )) ||
_kanidm__help__person__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person posix show commands' commands "$@"
}
(( $+functions[_kanidm__help__person__radius_commands] )) ||
_kanidm__help__person__radius_commands() {
    local commands; commands=(
'show-secret:Show the RADIUS secret for a user' \
'generate-secret:Generate a randomized RADIUS secret for a user' \
'delete-secret:Remove the configured RADIUS secret for the user' \
    )
    _describe -t commands 'kanidm help person radius commands' commands "$@"
}
(( $+functions[_kanidm__help__person__radius__delete-secret_commands] )) ||
_kanidm__help__person__radius__delete-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person radius delete-secret commands' commands "$@"
}
(( $+functions[_kanidm__help__person__radius__generate-secret_commands] )) ||
_kanidm__help__person__radius__generate-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person radius generate-secret commands' commands "$@"
}
(( $+functions[_kanidm__help__person__radius__show-secret_commands] )) ||
_kanidm__help__person__radius__show-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person radius show-secret commands' commands "$@"
}
(( $+functions[_kanidm__help__person__search_commands] )) ||
_kanidm__help__person__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person search commands' commands "$@"
}
(( $+functions[_kanidm__help__person__session_commands] )) ||
_kanidm__help__person__session_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
    )
    _describe -t commands 'kanidm help person session commands' commands "$@"
}
(( $+functions[_kanidm__help__person__session__destroy_commands] )) ||
_kanidm__help__person__session__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person session destroy commands' commands "$@"
}
(( $+functions[_kanidm__help__person__session__status_commands] )) ||
_kanidm__help__person__session__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person session status commands' commands "$@"
}
(( $+functions[_kanidm__help__person__ssh_commands] )) ||
_kanidm__help__person__ssh_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
    )
    _describe -t commands 'kanidm help person ssh commands' commands "$@"
}
(( $+functions[_kanidm__help__person__ssh__add-publickey_commands] )) ||
_kanidm__help__person__ssh__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person ssh add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__help__person__ssh__delete-publickey_commands] )) ||
_kanidm__help__person__ssh__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person ssh delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__help__person__ssh__list-publickeys_commands] )) ||
_kanidm__help__person__ssh__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person ssh list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__help__person__update_commands] )) ||
_kanidm__help__person__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person update commands' commands "$@"
}
(( $+functions[_kanidm__help__person__validity_commands] )) ||
_kanidm__help__person__validity_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
    )
    _describe -t commands 'kanidm help person validity commands' commands "$@"
}
(( $+functions[_kanidm__help__person__validity__begin-from_commands] )) ||
_kanidm__help__person__validity__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person validity begin-from commands' commands "$@"
}
(( $+functions[_kanidm__help__person__validity__expire-at_commands] )) ||
_kanidm__help__person__validity__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person validity expire-at commands' commands "$@"
}
(( $+functions[_kanidm__help__person__validity__show_commands] )) ||
_kanidm__help__person__validity__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help person validity show commands' commands "$@"
}
(( $+functions[_kanidm__help__raw_commands] )) ||
_kanidm__help__raw_commands() {
    local commands; commands=(
'search:' \
'create:' \
'modify:' \
'delete:' \
    )
    _describe -t commands 'kanidm help raw commands' commands "$@"
}
(( $+functions[_kanidm__help__raw__create_commands] )) ||
_kanidm__help__raw__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help raw create commands' commands "$@"
}
(( $+functions[_kanidm__help__raw__delete_commands] )) ||
_kanidm__help__raw__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help raw delete commands' commands "$@"
}
(( $+functions[_kanidm__help__raw__modify_commands] )) ||
_kanidm__help__raw__modify_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help raw modify commands' commands "$@"
}
(( $+functions[_kanidm__help__raw__search_commands] )) ||
_kanidm__help__raw__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help raw search commands' commands "$@"
}
(( $+functions[_kanidm__help__reauth_commands] )) ||
_kanidm__help__reauth_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help reauth commands' commands "$@"
}
(( $+functions[_kanidm__help__recycle-bin_commands] )) ||
_kanidm__help__recycle-bin_commands() {
    local commands; commands=(
'list:List objects that are in the recycle bin' \
'get:Display an object from the recycle bin' \
'revive:Revive a recycled object into a live (accessible) state - this is the opposite of "delete"' \
    )
    _describe -t commands 'kanidm help recycle-bin commands' commands "$@"
}
(( $+functions[_kanidm__help__recycle-bin__get_commands] )) ||
_kanidm__help__recycle-bin__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help recycle-bin get commands' commands "$@"
}
(( $+functions[_kanidm__help__recycle-bin__list_commands] )) ||
_kanidm__help__recycle-bin__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help recycle-bin list commands' commands "$@"
}
(( $+functions[_kanidm__help__recycle-bin__revive_commands] )) ||
_kanidm__help__recycle-bin__revive_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help recycle-bin revive commands' commands "$@"
}
(( $+functions[_kanidm__help__schema_commands] )) ||
_kanidm__help__schema_commands() {
    local commands; commands=(
'class:Class related operations' \
'attribute:Attribute related operations' \
    )
    _describe -t commands 'kanidm help schema commands' commands "$@"
}
(( $+functions[_kanidm__help__schema__attribute_commands] )) ||
_kanidm__help__schema__attribute_commands() {
    local commands; commands=(
'list:List all attributes' \
'search:' \
    )
    _describe -t commands 'kanidm help schema attribute commands' commands "$@"
}
(( $+functions[_kanidm__help__schema__attribute__list_commands] )) ||
_kanidm__help__schema__attribute__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help schema attribute list commands' commands "$@"
}
(( $+functions[_kanidm__help__schema__attribute__search_commands] )) ||
_kanidm__help__schema__attribute__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help schema attribute search commands' commands "$@"
}
(( $+functions[_kanidm__help__schema__class_commands] )) ||
_kanidm__help__schema__class_commands() {
    local commands; commands=(
'list:List all classes' \
'search:' \
    )
    _describe -t commands 'kanidm help schema class commands' commands "$@"
}
(( $+functions[_kanidm__help__schema__class__list_commands] )) ||
_kanidm__help__schema__class__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help schema class list commands' commands "$@"
}
(( $+functions[_kanidm__help__schema__class__search_commands] )) ||
_kanidm__help__schema__class__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help schema class search commands' commands "$@"
}
(( $+functions[_kanidm__help__self_commands] )) ||
_kanidm__help__self_commands() {
    local commands; commands=(
'identify-user:Use the identify user feature' \
'whoami:Show the current authenticated user'\''s identity' \
    )
    _describe -t commands 'kanidm help self commands' commands "$@"
}
(( $+functions[_kanidm__help__self__identify-user_commands] )) ||
_kanidm__help__self__identify-user_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help self identify-user commands' commands "$@"
}
(( $+functions[_kanidm__help__self__whoami_commands] )) ||
_kanidm__help__self__whoami_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help self whoami commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account_commands] )) ||
_kanidm__help__service-account_commands() {
    local commands; commands=(
'credential:Manage the generated password of this service account' \
'api-token:Manage api tokens associated to this service account' \
'posix:Manage posix extensions for this service account allowing access to unix/linux systems' \
'session:Manage sessions (user auth tokens) associated to this service account' \
'ssh:Manage ssh public key'\''s associated to this person' \
'list:List all service accounts' \
'get:View a specific service account' \
'create:Create a new service account' \
'update:Update a specific service account'\''s attributes' \
'delete:Delete a service account' \
'validity:Manage a service account validity, such as expiry time (account lock/unlock)' \
'into-person:(Deprecated - due for removal in v1.1.0-15) - Convert a service account into a person. This is used during the alpha.9 to alpha.10 migration to "fix up" accounts that were not previously marked as persons' \
    )
    _describe -t commands 'kanidm help service-account commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__api-token_commands] )) ||
_kanidm__help__service-account__api-token_commands() {
    local commands; commands=(
'status:Show the status of api tokens associated to this service account' \
'generate:Generate a new api token for this service account' \
'destroy:Destroy / revoke an api token from this service account. Access to the token is NOT required, only the tag/uuid of the token' \
    )
    _describe -t commands 'kanidm help service-account api-token commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__api-token__destroy_commands] )) ||
_kanidm__help__service-account__api-token__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account api-token destroy commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__api-token__generate_commands] )) ||
_kanidm__help__service-account__api-token__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account api-token generate commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__api-token__status_commands] )) ||
_kanidm__help__service-account__api-token__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account api-token status commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__create_commands] )) ||
_kanidm__help__service-account__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account create commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__credential_commands] )) ||
_kanidm__help__service-account__credential_commands() {
    local commands; commands=(
'status:Show the status of this accounts password' \
'generate:Reset and generate a new service account password. This password can NOT be used with the LDAP interface' \
    )
    _describe -t commands 'kanidm help service-account credential commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__credential__generate_commands] )) ||
_kanidm__help__service-account__credential__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account credential generate commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__credential__status_commands] )) ||
_kanidm__help__service-account__credential__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account credential status commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__delete_commands] )) ||
_kanidm__help__service-account__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account delete commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__get_commands] )) ||
_kanidm__help__service-account__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account get commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__into-person_commands] )) ||
_kanidm__help__service-account__into-person_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account into-person commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__list_commands] )) ||
_kanidm__help__service-account__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account list commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__posix_commands] )) ||
_kanidm__help__service-account__posix_commands() {
    local commands; commands=(
'show:' \
'set:' \
'reset-gidnumber:Reset the gidnumber of this service account to the generated default' \
    )
    _describe -t commands 'kanidm help service-account posix commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__posix__reset-gidnumber_commands] )) ||
_kanidm__help__service-account__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__posix__set_commands] )) ||
_kanidm__help__service-account__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account posix set commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__posix__show_commands] )) ||
_kanidm__help__service-account__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account posix show commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__session_commands] )) ||
_kanidm__help__service-account__session_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
    )
    _describe -t commands 'kanidm help service-account session commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__session__destroy_commands] )) ||
_kanidm__help__service-account__session__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account session destroy commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__session__status_commands] )) ||
_kanidm__help__service-account__session__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account session status commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__ssh_commands] )) ||
_kanidm__help__service-account__ssh_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
    )
    _describe -t commands 'kanidm help service-account ssh commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__ssh__add-publickey_commands] )) ||
_kanidm__help__service-account__ssh__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account ssh add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__ssh__delete-publickey_commands] )) ||
_kanidm__help__service-account__ssh__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account ssh delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__ssh__list-publickeys_commands] )) ||
_kanidm__help__service-account__ssh__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account ssh list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__update_commands] )) ||
_kanidm__help__service-account__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account update commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__validity_commands] )) ||
_kanidm__help__service-account__validity_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
    )
    _describe -t commands 'kanidm help service-account validity commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__validity__begin-from_commands] )) ||
_kanidm__help__service-account__validity__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account validity begin-from commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__validity__expire-at_commands] )) ||
_kanidm__help__service-account__validity__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account validity expire-at commands' commands "$@"
}
(( $+functions[_kanidm__help__service-account__validity__show_commands] )) ||
_kanidm__help__service-account__validity__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help service-account validity show commands' commands "$@"
}
(( $+functions[_kanidm__help__session_commands] )) ||
_kanidm__help__session_commands() {
    local commands; commands=(
'list:List current active sessions' \
'cleanup:Remove sessions that have expired or are invalid' \
    )
    _describe -t commands 'kanidm help session commands' commands "$@"
}
(( $+functions[_kanidm__help__session__cleanup_commands] )) ||
_kanidm__help__session__cleanup_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help session cleanup commands' commands "$@"
}
(( $+functions[_kanidm__help__session__list_commands] )) ||
_kanidm__help__session__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help session list commands' commands "$@"
}
(( $+functions[_kanidm__help__system_commands] )) ||
_kanidm__help__system_commands() {
    local commands; commands=(
'pw-badlist:Configure and manage the password badlist entry' \
'denied-names:Configure and manage denied names' \
'oauth2:Configure and display oauth2/oidc client configuration' \
'domain:Configure and display domain configuration' \
'sync:Configure synchronisation from an external IDM system' \
'api:API related things' \
    )
    _describe -t commands 'kanidm help system commands' commands "$@"
}
(( $+functions[_kanidm__help__system__api_commands] )) ||
_kanidm__help__system__api_commands() {
    local commands; commands=(
'download-schema:Download the OpenAPI schema file' \
    )
    _describe -t commands 'kanidm help system api commands' commands "$@"
}
(( $+functions[_kanidm__help__system__api__download-schema_commands] )) ||
_kanidm__help__system__api__download-schema_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system api download-schema commands' commands "$@"
}
(( $+functions[_kanidm__help__system__denied-names_commands] )) ||
_kanidm__help__system__denied-names_commands() {
    local commands; commands=(
'show:Show information about this system'\''s denied name list' \
'append:' \
'remove:Remove a name from the denied name list' \
    )
    _describe -t commands 'kanidm help system denied-names commands' commands "$@"
}
(( $+functions[_kanidm__help__system__denied-names__append_commands] )) ||
_kanidm__help__system__denied-names__append_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system denied-names append commands' commands "$@"
}
(( $+functions[_kanidm__help__system__denied-names__remove_commands] )) ||
_kanidm__help__system__denied-names__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system denied-names remove commands' commands "$@"
}
(( $+functions[_kanidm__help__system__denied-names__show_commands] )) ||
_kanidm__help__system__denied-names__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system denied-names show commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain_commands] )) ||
_kanidm__help__system__domain_commands() {
    local commands; commands=(
'set-displayname:Set the domain display name' \
'set-ldap-queryable-attrs:Sets the maximum number of LDAP attributes that can be queried in one operation' \
'set-ldap-basedn:Change the basedn of this server. Takes effect after a server restart. Examples are \`o=organisation\` or \`dc=domain,dc=name\`. Must be a valid ldap dn containing only alphanumerics, and dn components must be org (o), domain (dc) or orgunit (ou)' \
'set-ldap-allow-unix-password-bind:Enable or disable unix passwords being used to bind via LDAP. Unless you have a specific requirement for this, you should disable this' \
'set-allow-easter-eggs:Enable or disable easter eggs in the server. This includes seasonal icons, kanidm birthday surprises and other fun components. Defaults to false for production releases and true in development builds' \
'show:Show information about this system'\''s domain' \
'revoke-key:Revoke a key by its key id. This will cause all user sessions to be invalidated (logged out)' \
'set-image:The image presented as the instance logo' \
'remove-image:The remove the current instance logo, reverting to the default' \
    )
    _describe -t commands 'kanidm help system domain commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__remove-image_commands] )) ||
_kanidm__help__system__domain__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain remove-image commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__revoke-key_commands] )) ||
_kanidm__help__system__domain__revoke-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain revoke-key commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__set-allow-easter-eggs_commands] )) ||
_kanidm__help__system__domain__set-allow-easter-eggs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain set-allow-easter-eggs commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__set-displayname_commands] )) ||
_kanidm__help__system__domain__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__set-image_commands] )) ||
_kanidm__help__system__domain__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain set-image commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__set-ldap-allow-unix-password-bind_commands] )) ||
_kanidm__help__system__domain__set-ldap-allow-unix-password-bind_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain set-ldap-allow-unix-password-bind commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__set-ldap-basedn_commands] )) ||
_kanidm__help__system__domain__set-ldap-basedn_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain set-ldap-basedn commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__set-ldap-queryable-attrs_commands] )) ||
_kanidm__help__system__domain__set-ldap-queryable-attrs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain set-ldap-queryable-attrs commands' commands "$@"
}
(( $+functions[_kanidm__help__system__domain__show_commands] )) ||
_kanidm__help__system__domain__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system domain show commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2_commands] )) ||
_kanidm__help__system__oauth2_commands() {
    local commands; commands=(
'list:List all configured oauth2 clients' \
'get:Display a selected oauth2 client' \
'create:Create a new oauth2 confidential client that is protected by basic auth' \
'create-public:Create a new OAuth2 public client that requires PKCE. You should prefer using confidential client types if possible over public ones' \
'update-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-scope-map:Remove a mapping from groups to scopes' \
'update-sup-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-sup-scope-map:Remove a mapping from groups to scopes' \
'update-claim-map:Update or add a new mapping from a group to custom claims that it provides to members' \
'update-claim-map-join:' \
'delete-claim-map:Remove a mapping from groups to a custom claim' \
'reset-basic-secret:Reset the client basic secret. You will need to update your client after executing this' \
'show-basic-secret:Show the associated basic secret for this client' \
'delete:Delete a oauth2 client' \
'set-displayname:Set a new display name for a client' \
'set-name:Set a new name for this client. You will need to update your integrated applications after this so that they continue to function correctly' \
'set-landing-url:The landing URL is the default origin of the OAuth2 client. Additionally, this landing URL is the target when Kanidm redirects the user from the apps listing page' \
'set-image:The image presented on the Kanidm Apps Listing page for an OAuth2 resource server' \
'remove-image:Removes the custom image previously set' \
'add-redirect-url:Add a supplemental URL as a redirection target. For example a phone app may use a redirect URL such as \`app\://my-cool-app\` to trigger a native redirection event out of a browser' \
'remove-redirect-url:Remove a supplemental redirect URL from the OAuth2 client configuration' \
'enable-pkce:Enable PKCE on this oauth2 client. This defaults to being enabled' \
'warning-insecure-client-disable-pkce:Disable PKCE on this oauth2 client to work around insecure clients that may not support it. You should request the client to enable PKCE!' \
'warning-enable-legacy-crypto:Enable legacy signing crypto on this oauth2 client. This defaults to being disabled. You only need to enable this for openid clients that do not support modern cryptographic operations' \
'disable-legacy-crypto:Disable legacy signing crypto on this oauth2 client. This is the default' \
'enable-strict-redirect-url:Enable strict validation of redirect URLs. Previously redirect URLs only validated the origin of the URL matched. When enabled, redirect URLs must match exactly' \
'disable-strict-redirect-url:' \
'enable-localhost-redirects:Allow public clients to redirect to localhost' \
'disable-localhost-redirects:Disable public clients redirecting to localhost' \
'prefer-short-username:Use the '\''name'\'' attribute instead of '\''spn'\'' for the preferred_username' \
'prefer-spn-username:Use the '\''spn'\'' attribute instead of '\''name'\'' for the preferred_username' \
'rotate-cryptographic-keys:Rotate the signing and encryption keys used by this client. The rotation will occur at the specified time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00" or immediately if the time is set to the value "now". Past signatures will continue to operate even after a rotation occurs. If you have concerns a key is compromised, then you should revoke it instead' \
'revoke-cryptographic-key:Revoke the signing and encryption keys used by this client. This will immediately trigger a rotation of the key in question, and signtatures or tokens issued by the revoked key will not be considered valid' \
    )
    _describe -t commands 'kanidm help system oauth2 commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__add-redirect-url_commands] )) ||
_kanidm__help__system__oauth2__add-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 add-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__create_commands] )) ||
_kanidm__help__system__oauth2__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 create commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__create-public_commands] )) ||
_kanidm__help__system__oauth2__create-public_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 create-public commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__delete_commands] )) ||
_kanidm__help__system__oauth2__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 delete commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__delete-claim-map_commands] )) ||
_kanidm__help__system__oauth2__delete-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 delete-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__delete-scope-map_commands] )) ||
_kanidm__help__system__oauth2__delete-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 delete-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__delete-sup-scope-map_commands] )) ||
_kanidm__help__system__oauth2__delete-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 delete-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__disable-legacy-crypto_commands] )) ||
_kanidm__help__system__oauth2__disable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 disable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__disable-localhost-redirects_commands] )) ||
_kanidm__help__system__oauth2__disable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 disable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__disable-strict-redirect-url_commands] )) ||
_kanidm__help__system__oauth2__disable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 disable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__enable-localhost-redirects_commands] )) ||
_kanidm__help__system__oauth2__enable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 enable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__enable-pkce_commands] )) ||
_kanidm__help__system__oauth2__enable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 enable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__enable-strict-redirect-url_commands] )) ||
_kanidm__help__system__oauth2__enable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 enable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__get_commands] )) ||
_kanidm__help__system__oauth2__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 get commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__list_commands] )) ||
_kanidm__help__system__oauth2__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 list commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__prefer-short-username_commands] )) ||
_kanidm__help__system__oauth2__prefer-short-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 prefer-short-username commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__prefer-spn-username_commands] )) ||
_kanidm__help__system__oauth2__prefer-spn-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 prefer-spn-username commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__remove-image_commands] )) ||
_kanidm__help__system__oauth2__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 remove-image commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__remove-redirect-url_commands] )) ||
_kanidm__help__system__oauth2__remove-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 remove-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__reset-basic-secret_commands] )) ||
_kanidm__help__system__oauth2__reset-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 reset-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__revoke-cryptographic-key_commands] )) ||
_kanidm__help__system__oauth2__revoke-cryptographic-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 revoke-cryptographic-key commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__rotate-cryptographic-keys_commands] )) ||
_kanidm__help__system__oauth2__rotate-cryptographic-keys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 rotate-cryptographic-keys commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__set-displayname_commands] )) ||
_kanidm__help__system__oauth2__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__set-image_commands] )) ||
_kanidm__help__system__oauth2__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 set-image commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__set-landing-url_commands] )) ||
_kanidm__help__system__oauth2__set-landing-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 set-landing-url commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__set-name_commands] )) ||
_kanidm__help__system__oauth2__set-name_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 set-name commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__show-basic-secret_commands] )) ||
_kanidm__help__system__oauth2__show-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 show-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__update-claim-map_commands] )) ||
_kanidm__help__system__oauth2__update-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 update-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__update-claim-map-join_commands] )) ||
_kanidm__help__system__oauth2__update-claim-map-join_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 update-claim-map-join commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__update-scope-map_commands] )) ||
_kanidm__help__system__oauth2__update-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 update-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__update-sup-scope-map_commands] )) ||
_kanidm__help__system__oauth2__update-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 update-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__warning-enable-legacy-crypto_commands] )) ||
_kanidm__help__system__oauth2__warning-enable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 warning-enable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__help__system__oauth2__warning-insecure-client-disable-pkce_commands] )) ||
_kanidm__help__system__oauth2__warning-insecure-client-disable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system oauth2 warning-insecure-client-disable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__help__system__pw-badlist_commands] )) ||
_kanidm__help__system__pw-badlist_commands() {
    local commands; commands=(
'show:Show information about this system'\''s password badlist' \
'upload:Upload an extra badlist, appending to the currently configured one. This badlist will be preprocessed to remove items that are already caught by "zxcvbn" at the configured level' \
'remove:Remove the content of these lists if present in the configured badlist' \
    )
    _describe -t commands 'kanidm help system pw-badlist commands' commands "$@"
}
(( $+functions[_kanidm__help__system__pw-badlist__remove_commands] )) ||
_kanidm__help__system__pw-badlist__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system pw-badlist remove commands' commands "$@"
}
(( $+functions[_kanidm__help__system__pw-badlist__show_commands] )) ||
_kanidm__help__system__pw-badlist__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system pw-badlist show commands' commands "$@"
}
(( $+functions[_kanidm__help__system__pw-badlist__upload_commands] )) ||
_kanidm__help__system__pw-badlist__upload_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system pw-badlist upload commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync_commands] )) ||
_kanidm__help__system__sync_commands() {
    local commands; commands=(
'list:List all configured IDM sync accounts' \
'get:Display a selected IDM sync account' \
'set-credential-portal:Set the url to the external credential portal. This will be displayed to synced users so that they can be redirected to update their credentials on this portal' \
'create:Create a new IDM sync account' \
'generate-token:Generate a bearer token for an IDM sync account' \
'destroy-token:Destroy (revoke) the bearer token for an IDM sync account' \
'set-yield-attributes:Set the list of attributes that have their authority yielded from the sync account and are allowed to be modified by kanidm and users. Any attributes not listed in in this command will have their authority returned to the sync account' \
'force-refresh:Reset the sync cookie of this connector, so that on the next operation of the sync tool a full refresh of the provider is requested. Kanidm attributes that have been granted authority will *not* be lost or deleted' \
'finalise:Finalise and remove this sync account. This will transfer all synchronised entries into the authority of Kanidm. This signals the end of a migration from an external IDM into Kanidm. ⚠️  This action can NOT be undone. Once complete, it is most likely that attempting to recreate a sync account from the same IDM will fail due to conflicting entries that Kanidm now owns' \
'terminate:Terminate and remove this sync account. This will DELETE all entries that were imported from the external IDM source. ⚠️  This action can NOT be undone, and will require you to recreate the sync account if you wish to re-import data. Recreating the sync account may fail until the recycle bin and and tombstones are purged' \
    )
    _describe -t commands 'kanidm help system sync commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__create_commands] )) ||
_kanidm__help__system__sync__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync create commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__destroy-token_commands] )) ||
_kanidm__help__system__sync__destroy-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync destroy-token commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__finalise_commands] )) ||
_kanidm__help__system__sync__finalise_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync finalise commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__force-refresh_commands] )) ||
_kanidm__help__system__sync__force-refresh_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync force-refresh commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__generate-token_commands] )) ||
_kanidm__help__system__sync__generate-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync generate-token commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__get_commands] )) ||
_kanidm__help__system__sync__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync get commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__list_commands] )) ||
_kanidm__help__system__sync__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync list commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__set-credential-portal_commands] )) ||
_kanidm__help__system__sync__set-credential-portal_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync set-credential-portal commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__set-yield-attributes_commands] )) ||
_kanidm__help__system__sync__set-yield-attributes_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync set-yield-attributes commands' commands "$@"
}
(( $+functions[_kanidm__help__system__sync__terminate_commands] )) ||
_kanidm__help__system__sync__terminate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help system sync terminate commands' commands "$@"
}
(( $+functions[_kanidm__help__version_commands] )) ||
_kanidm__help__version_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm help version commands' commands "$@"
}
(( $+functions[_kanidm__login_commands] )) ||
_kanidm__login_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm login commands' commands "$@"
}
(( $+functions[_kanidm__logout_commands] )) ||
_kanidm__logout_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm logout commands' commands "$@"
}
(( $+functions[_kanidm__person_commands] )) ||
_kanidm__person_commands() {
    local commands; commands=(
'credential:Manage the credentials this person uses for authentication' \
'radius:Manage radius access for this person' \
'posix:Manage posix extensions for this person allowing access to unix/linux systems' \
'session:Manage sessions (user auth tokens) associated to this person' \
'ssh:Manage ssh public key'\''s associated to this person' \
'list:List all persons' \
'get:View a specific person' \
'search:Search persons by name' \
'update:Update a specific person'\''s attributes' \
'create:Create a new person'\''s account' \
'delete:Delete a person'\''s account' \
'validity:Manage a person'\''s account validity, such as expiry time (account lock/unlock)' \
'certificate:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate_commands] )) ||
_kanidm__person__certificate_commands() {
    local commands; commands=(
'status:' \
'create:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person certificate commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate__create_commands] )) ||
_kanidm__person__certificate__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person certificate create commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate__help_commands] )) ||
_kanidm__person__certificate__help_commands() {
    local commands; commands=(
'status:' \
'create:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person certificate help commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate__help__create_commands] )) ||
_kanidm__person__certificate__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person certificate help create commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate__help__help_commands] )) ||
_kanidm__person__certificate__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person certificate help help commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate__help__status_commands] )) ||
_kanidm__person__certificate__help__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person certificate help status commands' commands "$@"
}
(( $+functions[_kanidm__person__certificate__status_commands] )) ||
_kanidm__person__certificate__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person certificate status commands' commands "$@"
}
(( $+functions[_kanidm__person__create_commands] )) ||
_kanidm__person__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person create commands' commands "$@"
}
(( $+functions[_kanidm__person__credential_commands] )) ||
_kanidm__person__credential_commands() {
    local commands; commands=(
'status:Show the status of this accounts credentials' \
'update:Interactively update/change the credentials for an account' \
'use-reset-token:Using a reset token, interactively reset credentials for a user' \
'create-reset-token:Create a reset token that can be given to another person so they can recover or reset their account credentials' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person credential commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__create-reset-token_commands] )) ||
_kanidm__person__credential__create-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential create-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__help_commands] )) ||
_kanidm__person__credential__help_commands() {
    local commands; commands=(
'status:Show the status of this accounts credentials' \
'update:Interactively update/change the credentials for an account' \
'use-reset-token:Using a reset token, interactively reset credentials for a user' \
'create-reset-token:Create a reset token that can be given to another person so they can recover or reset their account credentials' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person credential help commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__help__create-reset-token_commands] )) ||
_kanidm__person__credential__help__create-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential help create-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__help__help_commands] )) ||
_kanidm__person__credential__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential help help commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__help__status_commands] )) ||
_kanidm__person__credential__help__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential help status commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__help__update_commands] )) ||
_kanidm__person__credential__help__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential help update commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__help__use-reset-token_commands] )) ||
_kanidm__person__credential__help__use-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential help use-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__status_commands] )) ||
_kanidm__person__credential__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential status commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__update_commands] )) ||
_kanidm__person__credential__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential update commands' commands "$@"
}
(( $+functions[_kanidm__person__credential__use-reset-token_commands] )) ||
_kanidm__person__credential__use-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person credential use-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__person__delete_commands] )) ||
_kanidm__person__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person delete commands' commands "$@"
}
(( $+functions[_kanidm__person__get_commands] )) ||
_kanidm__person__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person get commands' commands "$@"
}
(( $+functions[_kanidm__person__help_commands] )) ||
_kanidm__person__help_commands() {
    local commands; commands=(
'credential:Manage the credentials this person uses for authentication' \
'radius:Manage radius access for this person' \
'posix:Manage posix extensions for this person allowing access to unix/linux systems' \
'session:Manage sessions (user auth tokens) associated to this person' \
'ssh:Manage ssh public key'\''s associated to this person' \
'list:List all persons' \
'get:View a specific person' \
'search:Search persons by name' \
'update:Update a specific person'\''s attributes' \
'create:Create a new person'\''s account' \
'delete:Delete a person'\''s account' \
'validity:Manage a person'\''s account validity, such as expiry time (account lock/unlock)' \
'certificate:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person help commands' commands "$@"
}
(( $+functions[_kanidm__person__help__certificate_commands] )) ||
_kanidm__person__help__certificate_commands() {
    local commands; commands=(
'status:' \
'create:' \
    )
    _describe -t commands 'kanidm person help certificate commands' commands "$@"
}
(( $+functions[_kanidm__person__help__certificate__create_commands] )) ||
_kanidm__person__help__certificate__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help certificate create commands' commands "$@"
}
(( $+functions[_kanidm__person__help__certificate__status_commands] )) ||
_kanidm__person__help__certificate__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help certificate status commands' commands "$@"
}
(( $+functions[_kanidm__person__help__create_commands] )) ||
_kanidm__person__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help create commands' commands "$@"
}
(( $+functions[_kanidm__person__help__credential_commands] )) ||
_kanidm__person__help__credential_commands() {
    local commands; commands=(
'status:Show the status of this accounts credentials' \
'update:Interactively update/change the credentials for an account' \
'use-reset-token:Using a reset token, interactively reset credentials for a user' \
'create-reset-token:Create a reset token that can be given to another person so they can recover or reset their account credentials' \
    )
    _describe -t commands 'kanidm person help credential commands' commands "$@"
}
(( $+functions[_kanidm__person__help__credential__create-reset-token_commands] )) ||
_kanidm__person__help__credential__create-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help credential create-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__person__help__credential__status_commands] )) ||
_kanidm__person__help__credential__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help credential status commands' commands "$@"
}
(( $+functions[_kanidm__person__help__credential__update_commands] )) ||
_kanidm__person__help__credential__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help credential update commands' commands "$@"
}
(( $+functions[_kanidm__person__help__credential__use-reset-token_commands] )) ||
_kanidm__person__help__credential__use-reset-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help credential use-reset-token commands' commands "$@"
}
(( $+functions[_kanidm__person__help__delete_commands] )) ||
_kanidm__person__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help delete commands' commands "$@"
}
(( $+functions[_kanidm__person__help__get_commands] )) ||
_kanidm__person__help__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help get commands' commands "$@"
}
(( $+functions[_kanidm__person__help__help_commands] )) ||
_kanidm__person__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help help commands' commands "$@"
}
(( $+functions[_kanidm__person__help__list_commands] )) ||
_kanidm__person__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help list commands' commands "$@"
}
(( $+functions[_kanidm__person__help__posix_commands] )) ||
_kanidm__person__help__posix_commands() {
    local commands; commands=(
'show:' \
'set:' \
'set-password:' \
'reset-gidnumber:Reset the gidnumber of this person to the generated default' \
    )
    _describe -t commands 'kanidm person help posix commands' commands "$@"
}
(( $+functions[_kanidm__person__help__posix__reset-gidnumber_commands] )) ||
_kanidm__person__help__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__person__help__posix__set_commands] )) ||
_kanidm__person__help__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help posix set commands' commands "$@"
}
(( $+functions[_kanidm__person__help__posix__set-password_commands] )) ||
_kanidm__person__help__posix__set-password_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help posix set-password commands' commands "$@"
}
(( $+functions[_kanidm__person__help__posix__show_commands] )) ||
_kanidm__person__help__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help posix show commands' commands "$@"
}
(( $+functions[_kanidm__person__help__radius_commands] )) ||
_kanidm__person__help__radius_commands() {
    local commands; commands=(
'show-secret:Show the RADIUS secret for a user' \
'generate-secret:Generate a randomized RADIUS secret for a user' \
'delete-secret:Remove the configured RADIUS secret for the user' \
    )
    _describe -t commands 'kanidm person help radius commands' commands "$@"
}
(( $+functions[_kanidm__person__help__radius__delete-secret_commands] )) ||
_kanidm__person__help__radius__delete-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help radius delete-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__help__radius__generate-secret_commands] )) ||
_kanidm__person__help__radius__generate-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help radius generate-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__help__radius__show-secret_commands] )) ||
_kanidm__person__help__radius__show-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help radius show-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__help__search_commands] )) ||
_kanidm__person__help__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help search commands' commands "$@"
}
(( $+functions[_kanidm__person__help__session_commands] )) ||
_kanidm__person__help__session_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
    )
    _describe -t commands 'kanidm person help session commands' commands "$@"
}
(( $+functions[_kanidm__person__help__session__destroy_commands] )) ||
_kanidm__person__help__session__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help session destroy commands' commands "$@"
}
(( $+functions[_kanidm__person__help__session__status_commands] )) ||
_kanidm__person__help__session__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help session status commands' commands "$@"
}
(( $+functions[_kanidm__person__help__ssh_commands] )) ||
_kanidm__person__help__ssh_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
    )
    _describe -t commands 'kanidm person help ssh commands' commands "$@"
}
(( $+functions[_kanidm__person__help__ssh__add-publickey_commands] )) ||
_kanidm__person__help__ssh__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help ssh add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__person__help__ssh__delete-publickey_commands] )) ||
_kanidm__person__help__ssh__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help ssh delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__person__help__ssh__list-publickeys_commands] )) ||
_kanidm__person__help__ssh__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help ssh list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__person__help__update_commands] )) ||
_kanidm__person__help__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help update commands' commands "$@"
}
(( $+functions[_kanidm__person__help__validity_commands] )) ||
_kanidm__person__help__validity_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
    )
    _describe -t commands 'kanidm person help validity commands' commands "$@"
}
(( $+functions[_kanidm__person__help__validity__begin-from_commands] )) ||
_kanidm__person__help__validity__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help validity begin-from commands' commands "$@"
}
(( $+functions[_kanidm__person__help__validity__expire-at_commands] )) ||
_kanidm__person__help__validity__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help validity expire-at commands' commands "$@"
}
(( $+functions[_kanidm__person__help__validity__show_commands] )) ||
_kanidm__person__help__validity__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person help validity show commands' commands "$@"
}
(( $+functions[_kanidm__person__list_commands] )) ||
_kanidm__person__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person list commands' commands "$@"
}
(( $+functions[_kanidm__person__posix_commands] )) ||
_kanidm__person__posix_commands() {
    local commands; commands=(
'show:' \
'set:' \
'set-password:' \
'reset-gidnumber:Reset the gidnumber of this person to the generated default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person posix commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__help_commands] )) ||
_kanidm__person__posix__help_commands() {
    local commands; commands=(
'show:' \
'set:' \
'set-password:' \
'reset-gidnumber:Reset the gidnumber of this person to the generated default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person posix help commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__help__help_commands] )) ||
_kanidm__person__posix__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix help help commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__help__reset-gidnumber_commands] )) ||
_kanidm__person__posix__help__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix help reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__help__set_commands] )) ||
_kanidm__person__posix__help__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix help set commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__help__set-password_commands] )) ||
_kanidm__person__posix__help__set-password_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix help set-password commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__help__show_commands] )) ||
_kanidm__person__posix__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix help show commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__reset-gidnumber_commands] )) ||
_kanidm__person__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__set_commands] )) ||
_kanidm__person__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix set commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__set-password_commands] )) ||
_kanidm__person__posix__set-password_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix set-password commands' commands "$@"
}
(( $+functions[_kanidm__person__posix__show_commands] )) ||
_kanidm__person__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person posix show commands' commands "$@"
}
(( $+functions[_kanidm__person__radius_commands] )) ||
_kanidm__person__radius_commands() {
    local commands; commands=(
'show-secret:Show the RADIUS secret for a user' \
'generate-secret:Generate a randomized RADIUS secret for a user' \
'delete-secret:Remove the configured RADIUS secret for the user' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person radius commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__delete-secret_commands] )) ||
_kanidm__person__radius__delete-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius delete-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__generate-secret_commands] )) ||
_kanidm__person__radius__generate-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius generate-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__help_commands] )) ||
_kanidm__person__radius__help_commands() {
    local commands; commands=(
'show-secret:Show the RADIUS secret for a user' \
'generate-secret:Generate a randomized RADIUS secret for a user' \
'delete-secret:Remove the configured RADIUS secret for the user' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person radius help commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__help__delete-secret_commands] )) ||
_kanidm__person__radius__help__delete-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius help delete-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__help__generate-secret_commands] )) ||
_kanidm__person__radius__help__generate-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius help generate-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__help__help_commands] )) ||
_kanidm__person__radius__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius help help commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__help__show-secret_commands] )) ||
_kanidm__person__radius__help__show-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius help show-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__radius__show-secret_commands] )) ||
_kanidm__person__radius__show-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person radius show-secret commands' commands "$@"
}
(( $+functions[_kanidm__person__search_commands] )) ||
_kanidm__person__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person search commands' commands "$@"
}
(( $+functions[_kanidm__person__session_commands] )) ||
_kanidm__person__session_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person session commands' commands "$@"
}
(( $+functions[_kanidm__person__session__destroy_commands] )) ||
_kanidm__person__session__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person session destroy commands' commands "$@"
}
(( $+functions[_kanidm__person__session__help_commands] )) ||
_kanidm__person__session__help_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person session help commands' commands "$@"
}
(( $+functions[_kanidm__person__session__help__destroy_commands] )) ||
_kanidm__person__session__help__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person session help destroy commands' commands "$@"
}
(( $+functions[_kanidm__person__session__help__help_commands] )) ||
_kanidm__person__session__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person session help help commands' commands "$@"
}
(( $+functions[_kanidm__person__session__help__status_commands] )) ||
_kanidm__person__session__help__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person session help status commands' commands "$@"
}
(( $+functions[_kanidm__person__session__status_commands] )) ||
_kanidm__person__session__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person session status commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh_commands] )) ||
_kanidm__person__ssh_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person ssh commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__add-publickey_commands] )) ||
_kanidm__person__ssh__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__delete-publickey_commands] )) ||
_kanidm__person__ssh__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__help_commands] )) ||
_kanidm__person__ssh__help_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person ssh help commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__help__add-publickey_commands] )) ||
_kanidm__person__ssh__help__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh help add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__help__delete-publickey_commands] )) ||
_kanidm__person__ssh__help__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh help delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__help__help_commands] )) ||
_kanidm__person__ssh__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh help help commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__help__list-publickeys_commands] )) ||
_kanidm__person__ssh__help__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh help list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__person__ssh__list-publickeys_commands] )) ||
_kanidm__person__ssh__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person ssh list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__person__update_commands] )) ||
_kanidm__person__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person update commands' commands "$@"
}
(( $+functions[_kanidm__person__validity_commands] )) ||
_kanidm__person__validity_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person validity commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__begin-from_commands] )) ||
_kanidm__person__validity__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity begin-from commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__expire-at_commands] )) ||
_kanidm__person__validity__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity expire-at commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__help_commands] )) ||
_kanidm__person__validity__help_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm person validity help commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__help__begin-from_commands] )) ||
_kanidm__person__validity__help__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity help begin-from commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__help__expire-at_commands] )) ||
_kanidm__person__validity__help__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity help expire-at commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__help__help_commands] )) ||
_kanidm__person__validity__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity help help commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__help__show_commands] )) ||
_kanidm__person__validity__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity help show commands' commands "$@"
}
(( $+functions[_kanidm__person__validity__show_commands] )) ||
_kanidm__person__validity__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm person validity show commands' commands "$@"
}
(( $+functions[_kanidm__raw_commands] )) ||
_kanidm__raw_commands() {
    local commands; commands=(
'search:' \
'create:' \
'modify:' \
'delete:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm raw commands' commands "$@"
}
(( $+functions[_kanidm__raw__create_commands] )) ||
_kanidm__raw__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw create commands' commands "$@"
}
(( $+functions[_kanidm__raw__delete_commands] )) ||
_kanidm__raw__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw delete commands' commands "$@"
}
(( $+functions[_kanidm__raw__help_commands] )) ||
_kanidm__raw__help_commands() {
    local commands; commands=(
'search:' \
'create:' \
'modify:' \
'delete:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm raw help commands' commands "$@"
}
(( $+functions[_kanidm__raw__help__create_commands] )) ||
_kanidm__raw__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw help create commands' commands "$@"
}
(( $+functions[_kanidm__raw__help__delete_commands] )) ||
_kanidm__raw__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw help delete commands' commands "$@"
}
(( $+functions[_kanidm__raw__help__help_commands] )) ||
_kanidm__raw__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw help help commands' commands "$@"
}
(( $+functions[_kanidm__raw__help__modify_commands] )) ||
_kanidm__raw__help__modify_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw help modify commands' commands "$@"
}
(( $+functions[_kanidm__raw__help__search_commands] )) ||
_kanidm__raw__help__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw help search commands' commands "$@"
}
(( $+functions[_kanidm__raw__modify_commands] )) ||
_kanidm__raw__modify_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw modify commands' commands "$@"
}
(( $+functions[_kanidm__raw__search_commands] )) ||
_kanidm__raw__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm raw search commands' commands "$@"
}
(( $+functions[_kanidm__reauth_commands] )) ||
_kanidm__reauth_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm reauth commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin_commands] )) ||
_kanidm__recycle-bin_commands() {
    local commands; commands=(
'list:List objects that are in the recycle bin' \
'get:Display an object from the recycle bin' \
'revive:Revive a recycled object into a live (accessible) state - this is the opposite of "delete"' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm recycle-bin commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__get_commands] )) ||
_kanidm__recycle-bin__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin get commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__help_commands] )) ||
_kanidm__recycle-bin__help_commands() {
    local commands; commands=(
'list:List objects that are in the recycle bin' \
'get:Display an object from the recycle bin' \
'revive:Revive a recycled object into a live (accessible) state - this is the opposite of "delete"' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm recycle-bin help commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__help__get_commands] )) ||
_kanidm__recycle-bin__help__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin help get commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__help__help_commands] )) ||
_kanidm__recycle-bin__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin help help commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__help__list_commands] )) ||
_kanidm__recycle-bin__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin help list commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__help__revive_commands] )) ||
_kanidm__recycle-bin__help__revive_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin help revive commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__list_commands] )) ||
_kanidm__recycle-bin__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin list commands' commands "$@"
}
(( $+functions[_kanidm__recycle-bin__revive_commands] )) ||
_kanidm__recycle-bin__revive_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm recycle-bin revive commands' commands "$@"
}
(( $+functions[_kanidm__schema_commands] )) ||
_kanidm__schema_commands() {
    local commands; commands=(
'class:Class related operations' \
'attribute:Attribute related operations' \
'attr:Attribute related operations' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm schema commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute_commands] )) ||
_kanidm__schema__attribute_commands() {
    local commands; commands=(
'list:List all attributes' \
'search:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm schema attribute commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute__help_commands] )) ||
_kanidm__schema__attribute__help_commands() {
    local commands; commands=(
'list:List all attributes' \
'search:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm schema attribute help commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute__help__help_commands] )) ||
_kanidm__schema__attribute__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema attribute help help commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute__help__list_commands] )) ||
_kanidm__schema__attribute__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema attribute help list commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute__help__search_commands] )) ||
_kanidm__schema__attribute__help__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema attribute help search commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute__list_commands] )) ||
_kanidm__schema__attribute__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema attribute list commands' commands "$@"
}
(( $+functions[_kanidm__schema__attribute__search_commands] )) ||
_kanidm__schema__attribute__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema attribute search commands' commands "$@"
}
(( $+functions[_kanidm__schema__class_commands] )) ||
_kanidm__schema__class_commands() {
    local commands; commands=(
'list:List all classes' \
'search:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm schema class commands' commands "$@"
}
(( $+functions[_kanidm__schema__class__help_commands] )) ||
_kanidm__schema__class__help_commands() {
    local commands; commands=(
'list:List all classes' \
'search:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm schema class help commands' commands "$@"
}
(( $+functions[_kanidm__schema__class__help__help_commands] )) ||
_kanidm__schema__class__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema class help help commands' commands "$@"
}
(( $+functions[_kanidm__schema__class__help__list_commands] )) ||
_kanidm__schema__class__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema class help list commands' commands "$@"
}
(( $+functions[_kanidm__schema__class__help__search_commands] )) ||
_kanidm__schema__class__help__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema class help search commands' commands "$@"
}
(( $+functions[_kanidm__schema__class__list_commands] )) ||
_kanidm__schema__class__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema class list commands' commands "$@"
}
(( $+functions[_kanidm__schema__class__search_commands] )) ||
_kanidm__schema__class__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema class search commands' commands "$@"
}
(( $+functions[_kanidm__schema__help_commands] )) ||
_kanidm__schema__help_commands() {
    local commands; commands=(
'class:Class related operations' \
'attribute:Attribute related operations' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm schema help commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__attribute_commands] )) ||
_kanidm__schema__help__attribute_commands() {
    local commands; commands=(
'list:List all attributes' \
'search:' \
    )
    _describe -t commands 'kanidm schema help attribute commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__attribute__list_commands] )) ||
_kanidm__schema__help__attribute__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema help attribute list commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__attribute__search_commands] )) ||
_kanidm__schema__help__attribute__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema help attribute search commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__class_commands] )) ||
_kanidm__schema__help__class_commands() {
    local commands; commands=(
'list:List all classes' \
'search:' \
    )
    _describe -t commands 'kanidm schema help class commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__class__list_commands] )) ||
_kanidm__schema__help__class__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema help class list commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__class__search_commands] )) ||
_kanidm__schema__help__class__search_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema help class search commands' commands "$@"
}
(( $+functions[_kanidm__schema__help__help_commands] )) ||
_kanidm__schema__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm schema help help commands' commands "$@"
}
(( $+functions[_kanidm__self_commands] )) ||
_kanidm__self_commands() {
    local commands; commands=(
'identify-user:Use the identify user feature' \
'whoami:Show the current authenticated user'\''s identity' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm self commands' commands "$@"
}
(( $+functions[_kanidm__self__help_commands] )) ||
_kanidm__self__help_commands() {
    local commands; commands=(
'identify-user:Use the identify user feature' \
'whoami:Show the current authenticated user'\''s identity' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm self help commands' commands "$@"
}
(( $+functions[_kanidm__self__help__help_commands] )) ||
_kanidm__self__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm self help help commands' commands "$@"
}
(( $+functions[_kanidm__self__help__identify-user_commands] )) ||
_kanidm__self__help__identify-user_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm self help identify-user commands' commands "$@"
}
(( $+functions[_kanidm__self__help__whoami_commands] )) ||
_kanidm__self__help__whoami_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm self help whoami commands' commands "$@"
}
(( $+functions[_kanidm__self__identify-user_commands] )) ||
_kanidm__self__identify-user_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm self identify-user commands' commands "$@"
}
(( $+functions[_kanidm__self__whoami_commands] )) ||
_kanidm__self__whoami_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm self whoami commands' commands "$@"
}
(( $+functions[_kanidm__service-account_commands] )) ||
_kanidm__service-account_commands() {
    local commands; commands=(
'credential:Manage the generated password of this service account' \
'api-token:Manage api tokens associated to this service account' \
'posix:Manage posix extensions for this service account allowing access to unix/linux systems' \
'session:Manage sessions (user auth tokens) associated to this service account' \
'ssh:Manage ssh public key'\''s associated to this person' \
'list:List all service accounts' \
'get:View a specific service account' \
'create:Create a new service account' \
'update:Update a specific service account'\''s attributes' \
'delete:Delete a service account' \
'validity:Manage a service account validity, such as expiry time (account lock/unlock)' \
'into-person:(Deprecated - due for removal in v1.1.0-15) - Convert a service account into a person. This is used during the alpha.9 to alpha.10 migration to "fix up" accounts that were not previously marked as persons' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token_commands] )) ||
_kanidm__service-account__api-token_commands() {
    local commands; commands=(
'status:Show the status of api tokens associated to this service account' \
'generate:Generate a new api token for this service account' \
'destroy:Destroy / revoke an api token from this service account. Access to the token is NOT required, only the tag/uuid of the token' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account api-token commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__destroy_commands] )) ||
_kanidm__service-account__api-token__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token destroy commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__generate_commands] )) ||
_kanidm__service-account__api-token__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token generate commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__help_commands] )) ||
_kanidm__service-account__api-token__help_commands() {
    local commands; commands=(
'status:Show the status of api tokens associated to this service account' \
'generate:Generate a new api token for this service account' \
'destroy:Destroy / revoke an api token from this service account. Access to the token is NOT required, only the tag/uuid of the token' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account api-token help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__help__destroy_commands] )) ||
_kanidm__service-account__api-token__help__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token help destroy commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__help__generate_commands] )) ||
_kanidm__service-account__api-token__help__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token help generate commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__help__help_commands] )) ||
_kanidm__service-account__api-token__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__help__status_commands] )) ||
_kanidm__service-account__api-token__help__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token help status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__api-token__status_commands] )) ||
_kanidm__service-account__api-token__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account api-token status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__create_commands] )) ||
_kanidm__service-account__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account create commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential_commands] )) ||
_kanidm__service-account__credential_commands() {
    local commands; commands=(
'status:Show the status of this accounts password' \
'generate:Reset and generate a new service account password. This password can NOT be used with the LDAP interface' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account credential commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential__generate_commands] )) ||
_kanidm__service-account__credential__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account credential generate commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential__help_commands] )) ||
_kanidm__service-account__credential__help_commands() {
    local commands; commands=(
'status:Show the status of this accounts password' \
'generate:Reset and generate a new service account password. This password can NOT be used with the LDAP interface' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account credential help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential__help__generate_commands] )) ||
_kanidm__service-account__credential__help__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account credential help generate commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential__help__help_commands] )) ||
_kanidm__service-account__credential__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account credential help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential__help__status_commands] )) ||
_kanidm__service-account__credential__help__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account credential help status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__credential__status_commands] )) ||
_kanidm__service-account__credential__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account credential status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__delete_commands] )) ||
_kanidm__service-account__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account delete commands' commands "$@"
}
(( $+functions[_kanidm__service-account__get_commands] )) ||
_kanidm__service-account__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account get commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help_commands] )) ||
_kanidm__service-account__help_commands() {
    local commands; commands=(
'credential:Manage the generated password of this service account' \
'api-token:Manage api tokens associated to this service account' \
'posix:Manage posix extensions for this service account allowing access to unix/linux systems' \
'session:Manage sessions (user auth tokens) associated to this service account' \
'ssh:Manage ssh public key'\''s associated to this person' \
'list:List all service accounts' \
'get:View a specific service account' \
'create:Create a new service account' \
'update:Update a specific service account'\''s attributes' \
'delete:Delete a service account' \
'validity:Manage a service account validity, such as expiry time (account lock/unlock)' \
'into-person:(Deprecated - due for removal in v1.1.0-15) - Convert a service account into a person. This is used during the alpha.9 to alpha.10 migration to "fix up" accounts that were not previously marked as persons' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__api-token_commands] )) ||
_kanidm__service-account__help__api-token_commands() {
    local commands; commands=(
'status:Show the status of api tokens associated to this service account' \
'generate:Generate a new api token for this service account' \
'destroy:Destroy / revoke an api token from this service account. Access to the token is NOT required, only the tag/uuid of the token' \
    )
    _describe -t commands 'kanidm service-account help api-token commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__api-token__destroy_commands] )) ||
_kanidm__service-account__help__api-token__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help api-token destroy commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__api-token__generate_commands] )) ||
_kanidm__service-account__help__api-token__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help api-token generate commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__api-token__status_commands] )) ||
_kanidm__service-account__help__api-token__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help api-token status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__create_commands] )) ||
_kanidm__service-account__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help create commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__credential_commands] )) ||
_kanidm__service-account__help__credential_commands() {
    local commands; commands=(
'status:Show the status of this accounts password' \
'generate:Reset and generate a new service account password. This password can NOT be used with the LDAP interface' \
    )
    _describe -t commands 'kanidm service-account help credential commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__credential__generate_commands] )) ||
_kanidm__service-account__help__credential__generate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help credential generate commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__credential__status_commands] )) ||
_kanidm__service-account__help__credential__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help credential status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__delete_commands] )) ||
_kanidm__service-account__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help delete commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__get_commands] )) ||
_kanidm__service-account__help__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help get commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__help_commands] )) ||
_kanidm__service-account__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__into-person_commands] )) ||
_kanidm__service-account__help__into-person_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help into-person commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__list_commands] )) ||
_kanidm__service-account__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help list commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__posix_commands] )) ||
_kanidm__service-account__help__posix_commands() {
    local commands; commands=(
'show:' \
'set:' \
'reset-gidnumber:Reset the gidnumber of this service account to the generated default' \
    )
    _describe -t commands 'kanidm service-account help posix commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__posix__reset-gidnumber_commands] )) ||
_kanidm__service-account__help__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__posix__set_commands] )) ||
_kanidm__service-account__help__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help posix set commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__posix__show_commands] )) ||
_kanidm__service-account__help__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help posix show commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__session_commands] )) ||
_kanidm__service-account__help__session_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
    )
    _describe -t commands 'kanidm service-account help session commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__session__destroy_commands] )) ||
_kanidm__service-account__help__session__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help session destroy commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__session__status_commands] )) ||
_kanidm__service-account__help__session__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help session status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__ssh_commands] )) ||
_kanidm__service-account__help__ssh_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
    )
    _describe -t commands 'kanidm service-account help ssh commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__ssh__add-publickey_commands] )) ||
_kanidm__service-account__help__ssh__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help ssh add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__ssh__delete-publickey_commands] )) ||
_kanidm__service-account__help__ssh__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help ssh delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__ssh__list-publickeys_commands] )) ||
_kanidm__service-account__help__ssh__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help ssh list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__update_commands] )) ||
_kanidm__service-account__help__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help update commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__validity_commands] )) ||
_kanidm__service-account__help__validity_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
    )
    _describe -t commands 'kanidm service-account help validity commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__validity__begin-from_commands] )) ||
_kanidm__service-account__help__validity__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help validity begin-from commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__validity__expire-at_commands] )) ||
_kanidm__service-account__help__validity__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help validity expire-at commands' commands "$@"
}
(( $+functions[_kanidm__service-account__help__validity__show_commands] )) ||
_kanidm__service-account__help__validity__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account help validity show commands' commands "$@"
}
(( $+functions[_kanidm__service-account__into-person_commands] )) ||
_kanidm__service-account__into-person_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account into-person commands' commands "$@"
}
(( $+functions[_kanidm__service-account__list_commands] )) ||
_kanidm__service-account__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account list commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix_commands] )) ||
_kanidm__service-account__posix_commands() {
    local commands; commands=(
'show:' \
'set:' \
'reset-gidnumber:Reset the gidnumber of this service account to the generated default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account posix commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__help_commands] )) ||
_kanidm__service-account__posix__help_commands() {
    local commands; commands=(
'show:' \
'set:' \
'reset-gidnumber:Reset the gidnumber of this service account to the generated default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account posix help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__help__help_commands] )) ||
_kanidm__service-account__posix__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__help__reset-gidnumber_commands] )) ||
_kanidm__service-account__posix__help__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix help reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__help__set_commands] )) ||
_kanidm__service-account__posix__help__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix help set commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__help__show_commands] )) ||
_kanidm__service-account__posix__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix help show commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__reset-gidnumber_commands] )) ||
_kanidm__service-account__posix__reset-gidnumber_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix reset-gidnumber commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__set_commands] )) ||
_kanidm__service-account__posix__set_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix set commands' commands "$@"
}
(( $+functions[_kanidm__service-account__posix__show_commands] )) ||
_kanidm__service-account__posix__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account posix show commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session_commands] )) ||
_kanidm__service-account__session_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account session commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session__destroy_commands] )) ||
_kanidm__service-account__session__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account session destroy commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session__help_commands] )) ||
_kanidm__service-account__session__help_commands() {
    local commands; commands=(
'status:Show the status of logged in sessions associated to this account' \
'destroy:Destroy / revoke a session for this account. Access to the session (user auth token) is NOT required, only the uuid of the session' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account session help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session__help__destroy_commands] )) ||
_kanidm__service-account__session__help__destroy_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account session help destroy commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session__help__help_commands] )) ||
_kanidm__service-account__session__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account session help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session__help__status_commands] )) ||
_kanidm__service-account__session__help__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account session help status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__session__status_commands] )) ||
_kanidm__service-account__session__status_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account session status commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh_commands] )) ||
_kanidm__service-account__ssh_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account ssh commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__add-publickey_commands] )) ||
_kanidm__service-account__ssh__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__delete-publickey_commands] )) ||
_kanidm__service-account__ssh__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__help_commands] )) ||
_kanidm__service-account__ssh__help_commands() {
    local commands; commands=(
'list-publickeys:' \
'add-publickey:' \
'delete-publickey:' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account ssh help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__help__add-publickey_commands] )) ||
_kanidm__service-account__ssh__help__add-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh help add-publickey commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__help__delete-publickey_commands] )) ||
_kanidm__service-account__ssh__help__delete-publickey_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh help delete-publickey commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__help__help_commands] )) ||
_kanidm__service-account__ssh__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__help__list-publickeys_commands] )) ||
_kanidm__service-account__ssh__help__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh help list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__service-account__ssh__list-publickeys_commands] )) ||
_kanidm__service-account__ssh__list-publickeys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account ssh list-publickeys commands' commands "$@"
}
(( $+functions[_kanidm__service-account__update_commands] )) ||
_kanidm__service-account__update_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account update commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity_commands] )) ||
_kanidm__service-account__validity_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account validity commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__begin-from_commands] )) ||
_kanidm__service-account__validity__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity begin-from commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__expire-at_commands] )) ||
_kanidm__service-account__validity__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity expire-at commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__help_commands] )) ||
_kanidm__service-account__validity__help_commands() {
    local commands; commands=(
'show:Show an accounts validity window' \
'expire-at:Set an accounts expiry time' \
'begin-from:Set an account valid from time' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm service-account validity help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__help__begin-from_commands] )) ||
_kanidm__service-account__validity__help__begin-from_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity help begin-from commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__help__expire-at_commands] )) ||
_kanidm__service-account__validity__help__expire-at_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity help expire-at commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__help__help_commands] )) ||
_kanidm__service-account__validity__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity help help commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__help__show_commands] )) ||
_kanidm__service-account__validity__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity help show commands' commands "$@"
}
(( $+functions[_kanidm__service-account__validity__show_commands] )) ||
_kanidm__service-account__validity__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm service-account validity show commands' commands "$@"
}
(( $+functions[_kanidm__session_commands] )) ||
_kanidm__session_commands() {
    local commands; commands=(
'list:List current active sessions' \
'cleanup:Remove sessions that have expired or are invalid' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm session commands' commands "$@"
}
(( $+functions[_kanidm__session__cleanup_commands] )) ||
_kanidm__session__cleanup_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm session cleanup commands' commands "$@"
}
(( $+functions[_kanidm__session__help_commands] )) ||
_kanidm__session__help_commands() {
    local commands; commands=(
'list:List current active sessions' \
'cleanup:Remove sessions that have expired or are invalid' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm session help commands' commands "$@"
}
(( $+functions[_kanidm__session__help__cleanup_commands] )) ||
_kanidm__session__help__cleanup_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm session help cleanup commands' commands "$@"
}
(( $+functions[_kanidm__session__help__help_commands] )) ||
_kanidm__session__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm session help help commands' commands "$@"
}
(( $+functions[_kanidm__session__help__list_commands] )) ||
_kanidm__session__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm session help list commands' commands "$@"
}
(( $+functions[_kanidm__session__list_commands] )) ||
_kanidm__session__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm session list commands' commands "$@"
}
(( $+functions[_kanidm__system_commands] )) ||
_kanidm__system_commands() {
    local commands; commands=(
'pw-badlist:Configure and manage the password badlist entry' \
'denied-names:Configure and manage denied names' \
'oauth2:Configure and display oauth2/oidc client configuration' \
'domain:Configure and display domain configuration' \
'sync:Configure synchronisation from an external IDM system' \
'api:API related things' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system commands' commands "$@"
}
(( $+functions[_kanidm__system__api_commands] )) ||
_kanidm__system__api_commands() {
    local commands; commands=(
'download-schema:Download the OpenAPI schema file' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system api commands' commands "$@"
}
(( $+functions[_kanidm__system__api__download-schema_commands] )) ||
_kanidm__system__api__download-schema_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system api download-schema commands' commands "$@"
}
(( $+functions[_kanidm__system__api__help_commands] )) ||
_kanidm__system__api__help_commands() {
    local commands; commands=(
'download-schema:Download the OpenAPI schema file' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system api help commands' commands "$@"
}
(( $+functions[_kanidm__system__api__help__download-schema_commands] )) ||
_kanidm__system__api__help__download-schema_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system api help download-schema commands' commands "$@"
}
(( $+functions[_kanidm__system__api__help__help_commands] )) ||
_kanidm__system__api__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system api help help commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names_commands] )) ||
_kanidm__system__denied-names_commands() {
    local commands; commands=(
'show:Show information about this system'\''s denied name list' \
'append:' \
'remove:Remove a name from the denied name list' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system denied-names commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__append_commands] )) ||
_kanidm__system__denied-names__append_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names append commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__help_commands] )) ||
_kanidm__system__denied-names__help_commands() {
    local commands; commands=(
'show:Show information about this system'\''s denied name list' \
'append:' \
'remove:Remove a name from the denied name list' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system denied-names help commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__help__append_commands] )) ||
_kanidm__system__denied-names__help__append_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names help append commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__help__help_commands] )) ||
_kanidm__system__denied-names__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names help help commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__help__remove_commands] )) ||
_kanidm__system__denied-names__help__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names help remove commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__help__show_commands] )) ||
_kanidm__system__denied-names__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names help show commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__remove_commands] )) ||
_kanidm__system__denied-names__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names remove commands' commands "$@"
}
(( $+functions[_kanidm__system__denied-names__show_commands] )) ||
_kanidm__system__denied-names__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system denied-names show commands' commands "$@"
}
(( $+functions[_kanidm__system__domain_commands] )) ||
_kanidm__system__domain_commands() {
    local commands; commands=(
'set-displayname:Set the domain display name' \
'set-ldap-queryable-attrs:Sets the maximum number of LDAP attributes that can be queried in one operation' \
'set-ldap-basedn:Change the basedn of this server. Takes effect after a server restart. Examples are \`o=organisation\` or \`dc=domain,dc=name\`. Must be a valid ldap dn containing only alphanumerics, and dn components must be org (o), domain (dc) or orgunit (ou)' \
'set-ldap-allow-unix-password-bind:Enable or disable unix passwords being used to bind via LDAP. Unless you have a specific requirement for this, you should disable this' \
'set-allow-easter-eggs:Enable or disable easter eggs in the server. This includes seasonal icons, kanidm birthday surprises and other fun components. Defaults to false for production releases and true in development builds' \
'show:Show information about this system'\''s domain' \
'revoke-key:Revoke a key by its key id. This will cause all user sessions to be invalidated (logged out)' \
'set-image:The image presented as the instance logo' \
'remove-image:The remove the current instance logo, reverting to the default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system domain commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help_commands] )) ||
_kanidm__system__domain__help_commands() {
    local commands; commands=(
'set-displayname:Set the domain display name' \
'set-ldap-queryable-attrs:Sets the maximum number of LDAP attributes that can be queried in one operation' \
'set-ldap-basedn:Change the basedn of this server. Takes effect after a server restart. Examples are \`o=organisation\` or \`dc=domain,dc=name\`. Must be a valid ldap dn containing only alphanumerics, and dn components must be org (o), domain (dc) or orgunit (ou)' \
'set-ldap-allow-unix-password-bind:Enable or disable unix passwords being used to bind via LDAP. Unless you have a specific requirement for this, you should disable this' \
'set-allow-easter-eggs:Enable or disable easter eggs in the server. This includes seasonal icons, kanidm birthday surprises and other fun components. Defaults to false for production releases and true in development builds' \
'show:Show information about this system'\''s domain' \
'revoke-key:Revoke a key by its key id. This will cause all user sessions to be invalidated (logged out)' \
'set-image:The image presented as the instance logo' \
'remove-image:The remove the current instance logo, reverting to the default' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system domain help commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__help_commands] )) ||
_kanidm__system__domain__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help help commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__remove-image_commands] )) ||
_kanidm__system__domain__help__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help remove-image commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__revoke-key_commands] )) ||
_kanidm__system__domain__help__revoke-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help revoke-key commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__set-allow-easter-eggs_commands] )) ||
_kanidm__system__domain__help__set-allow-easter-eggs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help set-allow-easter-eggs commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__set-displayname_commands] )) ||
_kanidm__system__domain__help__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__set-image_commands] )) ||
_kanidm__system__domain__help__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help set-image commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__set-ldap-allow-unix-password-bind_commands] )) ||
_kanidm__system__domain__help__set-ldap-allow-unix-password-bind_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help set-ldap-allow-unix-password-bind commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__set-ldap-basedn_commands] )) ||
_kanidm__system__domain__help__set-ldap-basedn_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help set-ldap-basedn commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__set-ldap-queryable-attrs_commands] )) ||
_kanidm__system__domain__help__set-ldap-queryable-attrs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help set-ldap-queryable-attrs commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__help__show_commands] )) ||
_kanidm__system__domain__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain help show commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__remove-image_commands] )) ||
_kanidm__system__domain__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain remove-image commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__revoke-key_commands] )) ||
_kanidm__system__domain__revoke-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain revoke-key commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__set-allow-easter-eggs_commands] )) ||
_kanidm__system__domain__set-allow-easter-eggs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain set-allow-easter-eggs commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__set-displayname_commands] )) ||
_kanidm__system__domain__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__set-image_commands] )) ||
_kanidm__system__domain__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain set-image commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__set-ldap-allow-unix-password-bind_commands] )) ||
_kanidm__system__domain__set-ldap-allow-unix-password-bind_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain set-ldap-allow-unix-password-bind commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__set-ldap-basedn_commands] )) ||
_kanidm__system__domain__set-ldap-basedn_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain set-ldap-basedn commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__set-ldap-queryable-attrs_commands] )) ||
_kanidm__system__domain__set-ldap-queryable-attrs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain set-ldap-queryable-attrs commands' commands "$@"
}
(( $+functions[_kanidm__system__domain__show_commands] )) ||
_kanidm__system__domain__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system domain show commands' commands "$@"
}
(( $+functions[_kanidm__system__help_commands] )) ||
_kanidm__system__help_commands() {
    local commands; commands=(
'pw-badlist:Configure and manage the password badlist entry' \
'denied-names:Configure and manage denied names' \
'oauth2:Configure and display oauth2/oidc client configuration' \
'domain:Configure and display domain configuration' \
'sync:Configure synchronisation from an external IDM system' \
'api:API related things' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system help commands' commands "$@"
}
(( $+functions[_kanidm__system__help__api_commands] )) ||
_kanidm__system__help__api_commands() {
    local commands; commands=(
'download-schema:Download the OpenAPI schema file' \
    )
    _describe -t commands 'kanidm system help api commands' commands "$@"
}
(( $+functions[_kanidm__system__help__api__download-schema_commands] )) ||
_kanidm__system__help__api__download-schema_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help api download-schema commands' commands "$@"
}
(( $+functions[_kanidm__system__help__denied-names_commands] )) ||
_kanidm__system__help__denied-names_commands() {
    local commands; commands=(
'show:Show information about this system'\''s denied name list' \
'append:' \
'remove:Remove a name from the denied name list' \
    )
    _describe -t commands 'kanidm system help denied-names commands' commands "$@"
}
(( $+functions[_kanidm__system__help__denied-names__append_commands] )) ||
_kanidm__system__help__denied-names__append_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help denied-names append commands' commands "$@"
}
(( $+functions[_kanidm__system__help__denied-names__remove_commands] )) ||
_kanidm__system__help__denied-names__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help denied-names remove commands' commands "$@"
}
(( $+functions[_kanidm__system__help__denied-names__show_commands] )) ||
_kanidm__system__help__denied-names__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help denied-names show commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain_commands] )) ||
_kanidm__system__help__domain_commands() {
    local commands; commands=(
'set-displayname:Set the domain display name' \
'set-ldap-queryable-attrs:Sets the maximum number of LDAP attributes that can be queried in one operation' \
'set-ldap-basedn:Change the basedn of this server. Takes effect after a server restart. Examples are \`o=organisation\` or \`dc=domain,dc=name\`. Must be a valid ldap dn containing only alphanumerics, and dn components must be org (o), domain (dc) or orgunit (ou)' \
'set-ldap-allow-unix-password-bind:Enable or disable unix passwords being used to bind via LDAP. Unless you have a specific requirement for this, you should disable this' \
'set-allow-easter-eggs:Enable or disable easter eggs in the server. This includes seasonal icons, kanidm birthday surprises and other fun components. Defaults to false for production releases and true in development builds' \
'show:Show information about this system'\''s domain' \
'revoke-key:Revoke a key by its key id. This will cause all user sessions to be invalidated (logged out)' \
'set-image:The image presented as the instance logo' \
'remove-image:The remove the current instance logo, reverting to the default' \
    )
    _describe -t commands 'kanidm system help domain commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__remove-image_commands] )) ||
_kanidm__system__help__domain__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain remove-image commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__revoke-key_commands] )) ||
_kanidm__system__help__domain__revoke-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain revoke-key commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__set-allow-easter-eggs_commands] )) ||
_kanidm__system__help__domain__set-allow-easter-eggs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain set-allow-easter-eggs commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__set-displayname_commands] )) ||
_kanidm__system__help__domain__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__set-image_commands] )) ||
_kanidm__system__help__domain__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain set-image commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__set-ldap-allow-unix-password-bind_commands] )) ||
_kanidm__system__help__domain__set-ldap-allow-unix-password-bind_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain set-ldap-allow-unix-password-bind commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__set-ldap-basedn_commands] )) ||
_kanidm__system__help__domain__set-ldap-basedn_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain set-ldap-basedn commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__set-ldap-queryable-attrs_commands] )) ||
_kanidm__system__help__domain__set-ldap-queryable-attrs_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain set-ldap-queryable-attrs commands' commands "$@"
}
(( $+functions[_kanidm__system__help__domain__show_commands] )) ||
_kanidm__system__help__domain__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help domain show commands' commands "$@"
}
(( $+functions[_kanidm__system__help__help_commands] )) ||
_kanidm__system__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help help commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2_commands] )) ||
_kanidm__system__help__oauth2_commands() {
    local commands; commands=(
'list:List all configured oauth2 clients' \
'get:Display a selected oauth2 client' \
'create:Create a new oauth2 confidential client that is protected by basic auth' \
'create-public:Create a new OAuth2 public client that requires PKCE. You should prefer using confidential client types if possible over public ones' \
'update-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-scope-map:Remove a mapping from groups to scopes' \
'update-sup-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-sup-scope-map:Remove a mapping from groups to scopes' \
'update-claim-map:Update or add a new mapping from a group to custom claims that it provides to members' \
'update-claim-map-join:' \
'delete-claim-map:Remove a mapping from groups to a custom claim' \
'reset-basic-secret:Reset the client basic secret. You will need to update your client after executing this' \
'show-basic-secret:Show the associated basic secret for this client' \
'delete:Delete a oauth2 client' \
'set-displayname:Set a new display name for a client' \
'set-name:Set a new name for this client. You will need to update your integrated applications after this so that they continue to function correctly' \
'set-landing-url:The landing URL is the default origin of the OAuth2 client. Additionally, this landing URL is the target when Kanidm redirects the user from the apps listing page' \
'set-image:The image presented on the Kanidm Apps Listing page for an OAuth2 resource server' \
'remove-image:Removes the custom image previously set' \
'add-redirect-url:Add a supplemental URL as a redirection target. For example a phone app may use a redirect URL such as \`app\://my-cool-app\` to trigger a native redirection event out of a browser' \
'remove-redirect-url:Remove a supplemental redirect URL from the OAuth2 client configuration' \
'enable-pkce:Enable PKCE on this oauth2 client. This defaults to being enabled' \
'warning-insecure-client-disable-pkce:Disable PKCE on this oauth2 client to work around insecure clients that may not support it. You should request the client to enable PKCE!' \
'warning-enable-legacy-crypto:Enable legacy signing crypto on this oauth2 client. This defaults to being disabled. You only need to enable this for openid clients that do not support modern cryptographic operations' \
'disable-legacy-crypto:Disable legacy signing crypto on this oauth2 client. This is the default' \
'enable-strict-redirect-url:Enable strict validation of redirect URLs. Previously redirect URLs only validated the origin of the URL matched. When enabled, redirect URLs must match exactly' \
'disable-strict-redirect-url:' \
'enable-localhost-redirects:Allow public clients to redirect to localhost' \
'disable-localhost-redirects:Disable public clients redirecting to localhost' \
'prefer-short-username:Use the '\''name'\'' attribute instead of '\''spn'\'' for the preferred_username' \
'prefer-spn-username:Use the '\''spn'\'' attribute instead of '\''name'\'' for the preferred_username' \
'rotate-cryptographic-keys:Rotate the signing and encryption keys used by this client. The rotation will occur at the specified time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00" or immediately if the time is set to the value "now". Past signatures will continue to operate even after a rotation occurs. If you have concerns a key is compromised, then you should revoke it instead' \
'revoke-cryptographic-key:Revoke the signing and encryption keys used by this client. This will immediately trigger a rotation of the key in question, and signtatures or tokens issued by the revoked key will not be considered valid' \
    )
    _describe -t commands 'kanidm system help oauth2 commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__add-redirect-url_commands] )) ||
_kanidm__system__help__oauth2__add-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 add-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__create_commands] )) ||
_kanidm__system__help__oauth2__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 create commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__create-public_commands] )) ||
_kanidm__system__help__oauth2__create-public_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 create-public commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__delete_commands] )) ||
_kanidm__system__help__oauth2__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 delete commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__delete-claim-map_commands] )) ||
_kanidm__system__help__oauth2__delete-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 delete-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__delete-scope-map_commands] )) ||
_kanidm__system__help__oauth2__delete-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 delete-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__delete-sup-scope-map_commands] )) ||
_kanidm__system__help__oauth2__delete-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 delete-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__disable-legacy-crypto_commands] )) ||
_kanidm__system__help__oauth2__disable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 disable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__disable-localhost-redirects_commands] )) ||
_kanidm__system__help__oauth2__disable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 disable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__disable-strict-redirect-url_commands] )) ||
_kanidm__system__help__oauth2__disable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 disable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__enable-localhost-redirects_commands] )) ||
_kanidm__system__help__oauth2__enable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 enable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__enable-pkce_commands] )) ||
_kanidm__system__help__oauth2__enable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 enable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__enable-strict-redirect-url_commands] )) ||
_kanidm__system__help__oauth2__enable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 enable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__get_commands] )) ||
_kanidm__system__help__oauth2__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 get commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__list_commands] )) ||
_kanidm__system__help__oauth2__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 list commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__prefer-short-username_commands] )) ||
_kanidm__system__help__oauth2__prefer-short-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 prefer-short-username commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__prefer-spn-username_commands] )) ||
_kanidm__system__help__oauth2__prefer-spn-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 prefer-spn-username commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__remove-image_commands] )) ||
_kanidm__system__help__oauth2__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 remove-image commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__remove-redirect-url_commands] )) ||
_kanidm__system__help__oauth2__remove-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 remove-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__reset-basic-secret_commands] )) ||
_kanidm__system__help__oauth2__reset-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 reset-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__revoke-cryptographic-key_commands] )) ||
_kanidm__system__help__oauth2__revoke-cryptographic-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 revoke-cryptographic-key commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__rotate-cryptographic-keys_commands] )) ||
_kanidm__system__help__oauth2__rotate-cryptographic-keys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 rotate-cryptographic-keys commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__set-displayname_commands] )) ||
_kanidm__system__help__oauth2__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__set-image_commands] )) ||
_kanidm__system__help__oauth2__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 set-image commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__set-landing-url_commands] )) ||
_kanidm__system__help__oauth2__set-landing-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 set-landing-url commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__set-name_commands] )) ||
_kanidm__system__help__oauth2__set-name_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 set-name commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__show-basic-secret_commands] )) ||
_kanidm__system__help__oauth2__show-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 show-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__update-claim-map_commands] )) ||
_kanidm__system__help__oauth2__update-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 update-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__update-claim-map-join_commands] )) ||
_kanidm__system__help__oauth2__update-claim-map-join_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 update-claim-map-join commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__update-scope-map_commands] )) ||
_kanidm__system__help__oauth2__update-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 update-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__update-sup-scope-map_commands] )) ||
_kanidm__system__help__oauth2__update-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 update-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__warning-enable-legacy-crypto_commands] )) ||
_kanidm__system__help__oauth2__warning-enable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 warning-enable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__system__help__oauth2__warning-insecure-client-disable-pkce_commands] )) ||
_kanidm__system__help__oauth2__warning-insecure-client-disable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help oauth2 warning-insecure-client-disable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__system__help__pw-badlist_commands] )) ||
_kanidm__system__help__pw-badlist_commands() {
    local commands; commands=(
'show:Show information about this system'\''s password badlist' \
'upload:Upload an extra badlist, appending to the currently configured one. This badlist will be preprocessed to remove items that are already caught by "zxcvbn" at the configured level' \
'remove:Remove the content of these lists if present in the configured badlist' \
    )
    _describe -t commands 'kanidm system help pw-badlist commands' commands "$@"
}
(( $+functions[_kanidm__system__help__pw-badlist__remove_commands] )) ||
_kanidm__system__help__pw-badlist__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help pw-badlist remove commands' commands "$@"
}
(( $+functions[_kanidm__system__help__pw-badlist__show_commands] )) ||
_kanidm__system__help__pw-badlist__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help pw-badlist show commands' commands "$@"
}
(( $+functions[_kanidm__system__help__pw-badlist__upload_commands] )) ||
_kanidm__system__help__pw-badlist__upload_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help pw-badlist upload commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync_commands] )) ||
_kanidm__system__help__sync_commands() {
    local commands; commands=(
'list:List all configured IDM sync accounts' \
'get:Display a selected IDM sync account' \
'set-credential-portal:Set the url to the external credential portal. This will be displayed to synced users so that they can be redirected to update their credentials on this portal' \
'create:Create a new IDM sync account' \
'generate-token:Generate a bearer token for an IDM sync account' \
'destroy-token:Destroy (revoke) the bearer token for an IDM sync account' \
'set-yield-attributes:Set the list of attributes that have their authority yielded from the sync account and are allowed to be modified by kanidm and users. Any attributes not listed in in this command will have their authority returned to the sync account' \
'force-refresh:Reset the sync cookie of this connector, so that on the next operation of the sync tool a full refresh of the provider is requested. Kanidm attributes that have been granted authority will *not* be lost or deleted' \
'finalise:Finalise and remove this sync account. This will transfer all synchronised entries into the authority of Kanidm. This signals the end of a migration from an external IDM into Kanidm. ⚠️  This action can NOT be undone. Once complete, it is most likely that attempting to recreate a sync account from the same IDM will fail due to conflicting entries that Kanidm now owns' \
'terminate:Terminate and remove this sync account. This will DELETE all entries that were imported from the external IDM source. ⚠️  This action can NOT be undone, and will require you to recreate the sync account if you wish to re-import data. Recreating the sync account may fail until the recycle bin and and tombstones are purged' \
    )
    _describe -t commands 'kanidm system help sync commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__create_commands] )) ||
_kanidm__system__help__sync__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync create commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__destroy-token_commands] )) ||
_kanidm__system__help__sync__destroy-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync destroy-token commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__finalise_commands] )) ||
_kanidm__system__help__sync__finalise_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync finalise commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__force-refresh_commands] )) ||
_kanidm__system__help__sync__force-refresh_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync force-refresh commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__generate-token_commands] )) ||
_kanidm__system__help__sync__generate-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync generate-token commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__get_commands] )) ||
_kanidm__system__help__sync__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync get commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__list_commands] )) ||
_kanidm__system__help__sync__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync list commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__set-credential-portal_commands] )) ||
_kanidm__system__help__sync__set-credential-portal_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync set-credential-portal commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__set-yield-attributes_commands] )) ||
_kanidm__system__help__sync__set-yield-attributes_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync set-yield-attributes commands' commands "$@"
}
(( $+functions[_kanidm__system__help__sync__terminate_commands] )) ||
_kanidm__system__help__sync__terminate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system help sync terminate commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2_commands] )) ||
_kanidm__system__oauth2_commands() {
    local commands; commands=(
'list:List all configured oauth2 clients' \
'get:Display a selected oauth2 client' \
'create:Create a new oauth2 confidential client that is protected by basic auth' \
'create-public:Create a new OAuth2 public client that requires PKCE. You should prefer using confidential client types if possible over public ones' \
'update-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'create-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-scope-map:Remove a mapping from groups to scopes' \
'update-sup-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'create-sup-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-sup-scope-map:Remove a mapping from groups to scopes' \
'update-claim-map:Update or add a new mapping from a group to custom claims that it provides to members' \
'create-claim-map:Update or add a new mapping from a group to custom claims that it provides to members' \
'update-claim-map-join:' \
'delete-claim-map:Remove a mapping from groups to a custom claim' \
'reset-basic-secret:Reset the client basic secret. You will need to update your client after executing this' \
'show-basic-secret:Show the associated basic secret for this client' \
'delete:Delete a oauth2 client' \
'set-displayname:Set a new display name for a client' \
'set-name:Set a new name for this client. You will need to update your integrated applications after this so that they continue to function correctly' \
'set-landing-url:The landing URL is the default origin of the OAuth2 client. Additionally, this landing URL is the target when Kanidm redirects the user from the apps listing page' \
'set-image:The image presented on the Kanidm Apps Listing page for an OAuth2 resource server' \
'remove-image:Removes the custom image previously set' \
'add-redirect-url:Add a supplemental URL as a redirection target. For example a phone app may use a redirect URL such as \`app\://my-cool-app\` to trigger a native redirection event out of a browser' \
'remove-redirect-url:Remove a supplemental redirect URL from the OAuth2 client configuration' \
'enable-pkce:Enable PKCE on this oauth2 client. This defaults to being enabled' \
'warning-insecure-client-disable-pkce:Disable PKCE on this oauth2 client to work around insecure clients that may not support it. You should request the client to enable PKCE!' \
'warning-enable-legacy-crypto:Enable legacy signing crypto on this oauth2 client. This defaults to being disabled. You only need to enable this for openid clients that do not support modern cryptographic operations' \
'disable-legacy-crypto:Disable legacy signing crypto on this oauth2 client. This is the default' \
'enable-strict-redirect-url:Enable strict validation of redirect URLs. Previously redirect URLs only validated the origin of the URL matched. When enabled, redirect URLs must match exactly' \
'disable-strict-redirect-url:' \
'enable-localhost-redirects:Allow public clients to redirect to localhost' \
'disable-localhost-redirects:Disable public clients redirecting to localhost' \
'prefer-short-username:Use the '\''name'\'' attribute instead of '\''spn'\'' for the preferred_username' \
'prefer-spn-username:Use the '\''spn'\'' attribute instead of '\''name'\'' for the preferred_username' \
'rotate-cryptographic-keys:Rotate the signing and encryption keys used by this client. The rotation will occur at the specified time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00" or immediately if the time is set to the value "now". Past signatures will continue to operate even after a rotation occurs. If you have concerns a key is compromised, then you should revoke it instead' \
'revoke-cryptographic-key:Revoke the signing and encryption keys used by this client. This will immediately trigger a rotation of the key in question, and signtatures or tokens issued by the revoked key will not be considered valid' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system oauth2 commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__add-redirect-url_commands] )) ||
_kanidm__system__oauth2__add-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 add-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__create_commands] )) ||
_kanidm__system__oauth2__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 create commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__create-public_commands] )) ||
_kanidm__system__oauth2__create-public_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 create-public commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__delete_commands] )) ||
_kanidm__system__oauth2__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 delete commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__delete-claim-map_commands] )) ||
_kanidm__system__oauth2__delete-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 delete-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__delete-scope-map_commands] )) ||
_kanidm__system__oauth2__delete-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 delete-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__delete-sup-scope-map_commands] )) ||
_kanidm__system__oauth2__delete-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 delete-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__disable-legacy-crypto_commands] )) ||
_kanidm__system__oauth2__disable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 disable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__disable-localhost-redirects_commands] )) ||
_kanidm__system__oauth2__disable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 disable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__disable-strict-redirect-url_commands] )) ||
_kanidm__system__oauth2__disable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 disable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__enable-localhost-redirects_commands] )) ||
_kanidm__system__oauth2__enable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 enable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__enable-pkce_commands] )) ||
_kanidm__system__oauth2__enable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 enable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__enable-strict-redirect-url_commands] )) ||
_kanidm__system__oauth2__enable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 enable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__get_commands] )) ||
_kanidm__system__oauth2__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 get commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help_commands] )) ||
_kanidm__system__oauth2__help_commands() {
    local commands; commands=(
'list:List all configured oauth2 clients' \
'get:Display a selected oauth2 client' \
'create:Create a new oauth2 confidential client that is protected by basic auth' \
'create-public:Create a new OAuth2 public client that requires PKCE. You should prefer using confidential client types if possible over public ones' \
'update-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-scope-map:Remove a mapping from groups to scopes' \
'update-sup-scope-map:Update or add a new mapping from a group to scopes that it provides to members' \
'delete-sup-scope-map:Remove a mapping from groups to scopes' \
'update-claim-map:Update or add a new mapping from a group to custom claims that it provides to members' \
'update-claim-map-join:' \
'delete-claim-map:Remove a mapping from groups to a custom claim' \
'reset-basic-secret:Reset the client basic secret. You will need to update your client after executing this' \
'show-basic-secret:Show the associated basic secret for this client' \
'delete:Delete a oauth2 client' \
'set-displayname:Set a new display name for a client' \
'set-name:Set a new name for this client. You will need to update your integrated applications after this so that they continue to function correctly' \
'set-landing-url:The landing URL is the default origin of the OAuth2 client. Additionally, this landing URL is the target when Kanidm redirects the user from the apps listing page' \
'set-image:The image presented on the Kanidm Apps Listing page for an OAuth2 resource server' \
'remove-image:Removes the custom image previously set' \
'add-redirect-url:Add a supplemental URL as a redirection target. For example a phone app may use a redirect URL such as \`app\://my-cool-app\` to trigger a native redirection event out of a browser' \
'remove-redirect-url:Remove a supplemental redirect URL from the OAuth2 client configuration' \
'enable-pkce:Enable PKCE on this oauth2 client. This defaults to being enabled' \
'warning-insecure-client-disable-pkce:Disable PKCE on this oauth2 client to work around insecure clients that may not support it. You should request the client to enable PKCE!' \
'warning-enable-legacy-crypto:Enable legacy signing crypto on this oauth2 client. This defaults to being disabled. You only need to enable this for openid clients that do not support modern cryptographic operations' \
'disable-legacy-crypto:Disable legacy signing crypto on this oauth2 client. This is the default' \
'enable-strict-redirect-url:Enable strict validation of redirect URLs. Previously redirect URLs only validated the origin of the URL matched. When enabled, redirect URLs must match exactly' \
'disable-strict-redirect-url:' \
'enable-localhost-redirects:Allow public clients to redirect to localhost' \
'disable-localhost-redirects:Disable public clients redirecting to localhost' \
'prefer-short-username:Use the '\''name'\'' attribute instead of '\''spn'\'' for the preferred_username' \
'prefer-spn-username:Use the '\''spn'\'' attribute instead of '\''name'\'' for the preferred_username' \
'rotate-cryptographic-keys:Rotate the signing and encryption keys used by this client. The rotation will occur at the specified time of the format "YYYY-MM-DDTHH\:MM\:SS+TZ", "2020-09-25T11\:22\:02+10\:00" or immediately if the time is set to the value "now". Past signatures will continue to operate even after a rotation occurs. If you have concerns a key is compromised, then you should revoke it instead' \
'revoke-cryptographic-key:Revoke the signing and encryption keys used by this client. This will immediately trigger a rotation of the key in question, and signtatures or tokens issued by the revoked key will not be considered valid' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system oauth2 help commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__add-redirect-url_commands] )) ||
_kanidm__system__oauth2__help__add-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help add-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__create_commands] )) ||
_kanidm__system__oauth2__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help create commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__create-public_commands] )) ||
_kanidm__system__oauth2__help__create-public_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help create-public commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__delete_commands] )) ||
_kanidm__system__oauth2__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help delete commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__delete-claim-map_commands] )) ||
_kanidm__system__oauth2__help__delete-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help delete-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__delete-scope-map_commands] )) ||
_kanidm__system__oauth2__help__delete-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help delete-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__delete-sup-scope-map_commands] )) ||
_kanidm__system__oauth2__help__delete-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help delete-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__disable-legacy-crypto_commands] )) ||
_kanidm__system__oauth2__help__disable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help disable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__disable-localhost-redirects_commands] )) ||
_kanidm__system__oauth2__help__disable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help disable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__disable-strict-redirect-url_commands] )) ||
_kanidm__system__oauth2__help__disable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help disable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__enable-localhost-redirects_commands] )) ||
_kanidm__system__oauth2__help__enable-localhost-redirects_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help enable-localhost-redirects commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__enable-pkce_commands] )) ||
_kanidm__system__oauth2__help__enable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help enable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__enable-strict-redirect-url_commands] )) ||
_kanidm__system__oauth2__help__enable-strict-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help enable-strict-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__get_commands] )) ||
_kanidm__system__oauth2__help__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help get commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__help_commands] )) ||
_kanidm__system__oauth2__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help help commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__list_commands] )) ||
_kanidm__system__oauth2__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help list commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__prefer-short-username_commands] )) ||
_kanidm__system__oauth2__help__prefer-short-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help prefer-short-username commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__prefer-spn-username_commands] )) ||
_kanidm__system__oauth2__help__prefer-spn-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help prefer-spn-username commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__remove-image_commands] )) ||
_kanidm__system__oauth2__help__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help remove-image commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__remove-redirect-url_commands] )) ||
_kanidm__system__oauth2__help__remove-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help remove-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__reset-basic-secret_commands] )) ||
_kanidm__system__oauth2__help__reset-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help reset-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__revoke-cryptographic-key_commands] )) ||
_kanidm__system__oauth2__help__revoke-cryptographic-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help revoke-cryptographic-key commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__rotate-cryptographic-keys_commands] )) ||
_kanidm__system__oauth2__help__rotate-cryptographic-keys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help rotate-cryptographic-keys commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__set-displayname_commands] )) ||
_kanidm__system__oauth2__help__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__set-image_commands] )) ||
_kanidm__system__oauth2__help__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help set-image commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__set-landing-url_commands] )) ||
_kanidm__system__oauth2__help__set-landing-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help set-landing-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__set-name_commands] )) ||
_kanidm__system__oauth2__help__set-name_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help set-name commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__show-basic-secret_commands] )) ||
_kanidm__system__oauth2__help__show-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help show-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__update-claim-map_commands] )) ||
_kanidm__system__oauth2__help__update-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help update-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__update-claim-map-join_commands] )) ||
_kanidm__system__oauth2__help__update-claim-map-join_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help update-claim-map-join commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__update-scope-map_commands] )) ||
_kanidm__system__oauth2__help__update-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help update-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__update-sup-scope-map_commands] )) ||
_kanidm__system__oauth2__help__update-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help update-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__warning-enable-legacy-crypto_commands] )) ||
_kanidm__system__oauth2__help__warning-enable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help warning-enable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__help__warning-insecure-client-disable-pkce_commands] )) ||
_kanidm__system__oauth2__help__warning-insecure-client-disable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 help warning-insecure-client-disable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__list_commands] )) ||
_kanidm__system__oauth2__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 list commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__prefer-short-username_commands] )) ||
_kanidm__system__oauth2__prefer-short-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 prefer-short-username commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__prefer-spn-username_commands] )) ||
_kanidm__system__oauth2__prefer-spn-username_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 prefer-spn-username commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__remove-image_commands] )) ||
_kanidm__system__oauth2__remove-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 remove-image commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__remove-redirect-url_commands] )) ||
_kanidm__system__oauth2__remove-redirect-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 remove-redirect-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__reset-basic-secret_commands] )) ||
_kanidm__system__oauth2__reset-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 reset-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__revoke-cryptographic-key_commands] )) ||
_kanidm__system__oauth2__revoke-cryptographic-key_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 revoke-cryptographic-key commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__rotate-cryptographic-keys_commands] )) ||
_kanidm__system__oauth2__rotate-cryptographic-keys_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 rotate-cryptographic-keys commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__set-displayname_commands] )) ||
_kanidm__system__oauth2__set-displayname_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 set-displayname commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__set-image_commands] )) ||
_kanidm__system__oauth2__set-image_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 set-image commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__set-landing-url_commands] )) ||
_kanidm__system__oauth2__set-landing-url_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 set-landing-url commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__set-name_commands] )) ||
_kanidm__system__oauth2__set-name_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 set-name commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__show-basic-secret_commands] )) ||
_kanidm__system__oauth2__show-basic-secret_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 show-basic-secret commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__update-claim-map_commands] )) ||
_kanidm__system__oauth2__update-claim-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 update-claim-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__update-claim-map-join_commands] )) ||
_kanidm__system__oauth2__update-claim-map-join_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 update-claim-map-join commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__update-scope-map_commands] )) ||
_kanidm__system__oauth2__update-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 update-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__update-sup-scope-map_commands] )) ||
_kanidm__system__oauth2__update-sup-scope-map_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 update-sup-scope-map commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__warning-enable-legacy-crypto_commands] )) ||
_kanidm__system__oauth2__warning-enable-legacy-crypto_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 warning-enable-legacy-crypto commands' commands "$@"
}
(( $+functions[_kanidm__system__oauth2__warning-insecure-client-disable-pkce_commands] )) ||
_kanidm__system__oauth2__warning-insecure-client-disable-pkce_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system oauth2 warning-insecure-client-disable-pkce commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist_commands] )) ||
_kanidm__system__pw-badlist_commands() {
    local commands; commands=(
'show:Show information about this system'\''s password badlist' \
'upload:Upload an extra badlist, appending to the currently configured one. This badlist will be preprocessed to remove items that are already caught by "zxcvbn" at the configured level' \
'remove:Remove the content of these lists if present in the configured badlist' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system pw-badlist commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__help_commands] )) ||
_kanidm__system__pw-badlist__help_commands() {
    local commands; commands=(
'show:Show information about this system'\''s password badlist' \
'upload:Upload an extra badlist, appending to the currently configured one. This badlist will be preprocessed to remove items that are already caught by "zxcvbn" at the configured level' \
'remove:Remove the content of these lists if present in the configured badlist' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system pw-badlist help commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__help__help_commands] )) ||
_kanidm__system__pw-badlist__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist help help commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__help__remove_commands] )) ||
_kanidm__system__pw-badlist__help__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist help remove commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__help__show_commands] )) ||
_kanidm__system__pw-badlist__help__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist help show commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__help__upload_commands] )) ||
_kanidm__system__pw-badlist__help__upload_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist help upload commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__remove_commands] )) ||
_kanidm__system__pw-badlist__remove_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist remove commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__show_commands] )) ||
_kanidm__system__pw-badlist__show_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist show commands' commands "$@"
}
(( $+functions[_kanidm__system__pw-badlist__upload_commands] )) ||
_kanidm__system__pw-badlist__upload_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system pw-badlist upload commands' commands "$@"
}
(( $+functions[_kanidm__system__sync_commands] )) ||
_kanidm__system__sync_commands() {
    local commands; commands=(
'list:List all configured IDM sync accounts' \
'get:Display a selected IDM sync account' \
'set-credential-portal:Set the url to the external credential portal. This will be displayed to synced users so that they can be redirected to update their credentials on this portal' \
'create:Create a new IDM sync account' \
'generate-token:Generate a bearer token for an IDM sync account' \
'destroy-token:Destroy (revoke) the bearer token for an IDM sync account' \
'set-yield-attributes:Set the list of attributes that have their authority yielded from the sync account and are allowed to be modified by kanidm and users. Any attributes not listed in in this command will have their authority returned to the sync account' \
'force-refresh:Reset the sync cookie of this connector, so that on the next operation of the sync tool a full refresh of the provider is requested. Kanidm attributes that have been granted authority will *not* be lost or deleted' \
'finalise:Finalise and remove this sync account. This will transfer all synchronised entries into the authority of Kanidm. This signals the end of a migration from an external IDM into Kanidm. ⚠️  This action can NOT be undone. Once complete, it is most likely that attempting to recreate a sync account from the same IDM will fail due to conflicting entries that Kanidm now owns' \
'terminate:Terminate and remove this sync account. This will DELETE all entries that were imported from the external IDM source. ⚠️  This action can NOT be undone, and will require you to recreate the sync account if you wish to re-import data. Recreating the sync account may fail until the recycle bin and and tombstones are purged' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system sync commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__create_commands] )) ||
_kanidm__system__sync__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync create commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__destroy-token_commands] )) ||
_kanidm__system__sync__destroy-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync destroy-token commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__finalise_commands] )) ||
_kanidm__system__sync__finalise_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync finalise commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__force-refresh_commands] )) ||
_kanidm__system__sync__force-refresh_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync force-refresh commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__generate-token_commands] )) ||
_kanidm__system__sync__generate-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync generate-token commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__get_commands] )) ||
_kanidm__system__sync__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync get commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help_commands] )) ||
_kanidm__system__sync__help_commands() {
    local commands; commands=(
'list:List all configured IDM sync accounts' \
'get:Display a selected IDM sync account' \
'set-credential-portal:Set the url to the external credential portal. This will be displayed to synced users so that they can be redirected to update their credentials on this portal' \
'create:Create a new IDM sync account' \
'generate-token:Generate a bearer token for an IDM sync account' \
'destroy-token:Destroy (revoke) the bearer token for an IDM sync account' \
'set-yield-attributes:Set the list of attributes that have their authority yielded from the sync account and are allowed to be modified by kanidm and users. Any attributes not listed in in this command will have their authority returned to the sync account' \
'force-refresh:Reset the sync cookie of this connector, so that on the next operation of the sync tool a full refresh of the provider is requested. Kanidm attributes that have been granted authority will *not* be lost or deleted' \
'finalise:Finalise and remove this sync account. This will transfer all synchronised entries into the authority of Kanidm. This signals the end of a migration from an external IDM into Kanidm. ⚠️  This action can NOT be undone. Once complete, it is most likely that attempting to recreate a sync account from the same IDM will fail due to conflicting entries that Kanidm now owns' \
'terminate:Terminate and remove this sync account. This will DELETE all entries that were imported from the external IDM source. ⚠️  This action can NOT be undone, and will require you to recreate the sync account if you wish to re-import data. Recreating the sync account may fail until the recycle bin and and tombstones are purged' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'kanidm system sync help commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__create_commands] )) ||
_kanidm__system__sync__help__create_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help create commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__destroy-token_commands] )) ||
_kanidm__system__sync__help__destroy-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help destroy-token commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__finalise_commands] )) ||
_kanidm__system__sync__help__finalise_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help finalise commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__force-refresh_commands] )) ||
_kanidm__system__sync__help__force-refresh_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help force-refresh commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__generate-token_commands] )) ||
_kanidm__system__sync__help__generate-token_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help generate-token commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__get_commands] )) ||
_kanidm__system__sync__help__get_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help get commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__help_commands] )) ||
_kanidm__system__sync__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help help commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__list_commands] )) ||
_kanidm__system__sync__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help list commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__set-credential-portal_commands] )) ||
_kanidm__system__sync__help__set-credential-portal_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help set-credential-portal commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__set-yield-attributes_commands] )) ||
_kanidm__system__sync__help__set-yield-attributes_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help set-yield-attributes commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__help__terminate_commands] )) ||
_kanidm__system__sync__help__terminate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync help terminate commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__list_commands] )) ||
_kanidm__system__sync__list_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync list commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__set-credential-portal_commands] )) ||
_kanidm__system__sync__set-credential-portal_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync set-credential-portal commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__set-yield-attributes_commands] )) ||
_kanidm__system__sync__set-yield-attributes_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync set-yield-attributes commands' commands "$@"
}
(( $+functions[_kanidm__system__sync__terminate_commands] )) ||
_kanidm__system__sync__terminate_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm system sync terminate commands' commands "$@"
}
(( $+functions[_kanidm__version_commands] )) ||
_kanidm__version_commands() {
    local commands; commands=()
    _describe -t commands 'kanidm version commands' commands "$@"
}

if [ "$funcstack[1]" = "_kanidm" ]; then
    _kanidm "$@"
else
    compdef _kanidm kanidm
fi
