#compdef pgp-sig2dot

autoload -U is-at-least

_pgp-sig2dot() {
    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[@]}" : \
'--import=[Import keyring from file or stdin]:IMPORT: ' \
'*-k+[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'*--fingerprint=[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'--gossip=[Gossip the trust paths from the trust root(given above by \`--fingerprint\`), with an integer value which means the depth limit of gossiping Specially, 0 means no depth limit, it'\''s only allowed without online mode]:GOSSIP: ' \
'--keyserver=[Key server]:KEYSERVER: ' \
'*-v[Increase logging verbosity]' \
'*--verbose[Increase logging verbosity]' \
'(-v --verbose)*-q[Decrease logging verbosity]' \
'(-v --verbose)*--quiet[Decrease logging verbosity]' \
'-p[Show only primary UIDs]' \
'--show-primary-uid-only[Show only primary UIDs]' \
'-a[Show self-signatures]' \
'--show-self-sigs[Show self-signatures]' \
'--online[Fetch the newest signature from key server for each key in keyring]' \
'--simple[Keep the output simple instead of JSON]' \
'-h[Print help]' \
'--help[Print help]' \
'-V[Print version]' \
'--version[Print version]' \
":: :_pgp-sig2dot_commands" \
"*::: :->pgp-sig2dot" \
&& ret=0
    case $state in
    (pgp-sig2dot)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:pgp-sig2dot-command-$line[1]:"
        case $line[1] in
            (gen)
_arguments "${_arguments_options[@]}" : \
'--import=[Import keyring from file or stdin]:IMPORT: ' \
'*-k+[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'*--fingerprint=[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'--gossip=[Gossip the trust paths from the trust root(given above by \`--fingerprint\`), with an integer value which means the depth limit of gossiping Specially, 0 means no depth limit, it'\''s only allowed without online mode]:GOSSIP: ' \
'--keyserver=[Key server]:KEYSERVER: ' \
'*-v[Increase logging verbosity]' \
'*--verbose[Increase logging verbosity]' \
'(-v --verbose)*-q[Decrease logging verbosity]' \
'(-v --verbose)*--quiet[Decrease logging verbosity]' \
'-p[Show only primary UIDs]' \
'--show-primary-uid-only[Show only primary UIDs]' \
'-a[Show self-signatures]' \
'--show-self-sigs[Show self-signatures]' \
'--online[Fetch the newest signature from key server for each key in keyring]' \
'--simple[Keep the output simple instead of JSON]' \
'-h[Print help]' \
'--help[Print help]' \
":: :_pgp-sig2dot__gen_commands" \
"*::: :->gen" \
&& ret=0

    case $state in
    (gen)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:pgp-sig2dot-gen-command-$line[1]:"
        case $line[1] in
            (man)
_arguments "${_arguments_options[@]}" : \
'--path=[Output Path]:PATH: ' \
'--import=[Import keyring from file or stdin]:IMPORT: ' \
'*-k+[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'*--fingerprint=[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'--gossip=[Gossip the trust paths from the trust root(given above by \`--fingerprint\`), with an integer value which means the depth limit of gossiping Specially, 0 means no depth limit, it'\''s only allowed without online mode]:GOSSIP: ' \
'--keyserver=[Key server]:KEYSERVER: ' \
'*-v[Increase logging verbosity]' \
'*--verbose[Increase logging verbosity]' \
'(-v --verbose)*-q[Decrease logging verbosity]' \
'(-v --verbose)*--quiet[Decrease logging verbosity]' \
'-p[Show only primary UIDs]' \
'--show-primary-uid-only[Show only primary UIDs]' \
'-a[Show self-signatures]' \
'--show-self-sigs[Show self-signatures]' \
'--online[Fetch the newest signature from key server for each key in keyring]' \
'--simple[Keep the output simple instead of JSON]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(complete)
_arguments "${_arguments_options[@]}" : \
'--output=[Output Path]:OUTPUT: ' \
'--import=[Import keyring from file or stdin]:IMPORT: ' \
'*-k+[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'*--fingerprint=[Import keys from keyserver by fingerprint]:FINGERPRINT: ' \
'--gossip=[Gossip the trust paths from the trust root(given above by \`--fingerprint\`), with an integer value which means the depth limit of gossiping Specially, 0 means no depth limit, it'\''s only allowed without online mode]:GOSSIP: ' \
'--keyserver=[Key server]:KEYSERVER: ' \
'*-v[Increase logging verbosity]' \
'*--verbose[Increase logging verbosity]' \
'(-v --verbose)*-q[Decrease logging verbosity]' \
'(-v --verbose)*--quiet[Decrease logging verbosity]' \
'-p[Show only primary UIDs]' \
'--show-primary-uid-only[Show only primary UIDs]' \
'-a[Show self-signatures]' \
'--show-self-sigs[Show self-signatures]' \
'--online[Fetch the newest signature from key server for each key in keyring]' \
'--simple[Keep the output simple instead of JSON]' \
'-h[Print help]' \
'--help[Print help]' \
':args:(bash elvish fish powershell zsh)' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_pgp-sig2dot__gen__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:pgp-sig2dot-gen-help-command-$line[1]:"
        case $line[1] in
            (man)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(complete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_pgp-sig2dot__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:pgp-sig2dot-help-command-$line[1]:"
        case $line[1] in
            (gen)
_arguments "${_arguments_options[@]}" : \
":: :_pgp-sig2dot__help__gen_commands" \
"*::: :->gen" \
&& ret=0

    case $state in
    (gen)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:pgp-sig2dot-help-gen-command-$line[1]:"
        case $line[1] in
            (man)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(complete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
}

(( $+functions[_pgp-sig2dot_commands] )) ||
_pgp-sig2dot_commands() {
    local commands; commands=(
'gen:Generate manual or shell auto complete file' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'pgp-sig2dot commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen_commands] )) ||
_pgp-sig2dot__gen_commands() {
    local commands; commands=(
'man:Generate manual file' \
'complete:Generate shell auto complete file' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'pgp-sig2dot gen commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen__complete_commands] )) ||
_pgp-sig2dot__gen__complete_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot gen complete commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen__help_commands] )) ||
_pgp-sig2dot__gen__help_commands() {
    local commands; commands=(
'man:Generate manual file' \
'complete:Generate shell auto complete file' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'pgp-sig2dot gen help commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen__help__complete_commands] )) ||
_pgp-sig2dot__gen__help__complete_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot gen help complete commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen__help__help_commands] )) ||
_pgp-sig2dot__gen__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot gen help help commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen__help__man_commands] )) ||
_pgp-sig2dot__gen__help__man_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot gen help man commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__gen__man_commands] )) ||
_pgp-sig2dot__gen__man_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot gen man commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__help_commands] )) ||
_pgp-sig2dot__help_commands() {
    local commands; commands=(
'gen:Generate manual or shell auto complete file' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'pgp-sig2dot help commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__help__gen_commands] )) ||
_pgp-sig2dot__help__gen_commands() {
    local commands; commands=(
'man:Generate manual file' \
'complete:Generate shell auto complete file' \
    )
    _describe -t commands 'pgp-sig2dot help gen commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__help__gen__complete_commands] )) ||
_pgp-sig2dot__help__gen__complete_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot help gen complete commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__help__gen__man_commands] )) ||
_pgp-sig2dot__help__gen__man_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot help gen man commands' commands "$@"
}
(( $+functions[_pgp-sig2dot__help__help_commands] )) ||
_pgp-sig2dot__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'pgp-sig2dot help help commands' commands "$@"
}

if [ "$funcstack[1]" = "_pgp-sig2dot" ]; then
    _pgp-sig2dot "$@"
else
    compdef _pgp-sig2dot pgp-sig2dot
fi
