_node_complete() {
  local cur_word options
  cur_word="${COMP_WORDS[COMP_CWORD]}"
  if [[ "${cur_word}" == -* ]] ; then
    COMPREPLY=( $(compgen -W '--disable-wasm-trap-handler --run --experimental-sea-config --node-memory-debug --heapsnapshot-signal --preserve-symlinks --pending-deprecation --interactive --max-old-space-size --entry-url --warnings --test-name-pattern --interpreted-frames-native-stack --test-skip-pattern --permission-audit --env-file --require --experimental-global-webcrypto --test-force-exit --test-coverage-functions --test-coverage-include --experimental-detect-module --allow-child-process --addons --permission --experimental-eventsource --disable-sigusr1 --force-async-hooks-checks --experimental-import-text --experimental-abortcontroller --experimental-websocket --allow-worker --localstorage-file --diagnostic-dir --experimental-loader --experimental-test-snapshots --experimental-sqlite --async-context-frame --verify-base-objects --experimental-webstorage --experimental-print-required-tla --tls-keylog --experimental-require-module --disallow-code-generation-from-strings --trace-promises --inspect-brk --allow-fs-write --build-snapshot-config --throw-deprecation --experimental-wasi-unstable-preview1 --experimental-json-modules --experimental-worker --heap-prof-interval --input-type --max-heap-size --inspect-publish-uid --require-module --dns-result-order --experimental-global-customevent --trace-env --experimental-import-meta-resolve --frozen-intrinsics --debug --abort-on-uncaught-exception --experimental-report --test-random-seed --watch-preserve-output --experimental-quic --report-signal --experimental-test-coverage --import --use-env-proxy --heapsnapshot-near-heap-limit --inspect --track-heap-objects --perf-basic-prof --heap-prof-dir --inspect-port --experimental-fetch --perf-prof-unwinding-info --test-coverage-lines --experimental-inspector-network-resource --disable-warning --experimental-wasm-modules --build-snapshot --experimental-test-tag-filter --inspect-wait --max-semi-space-size --network-family-autoselection --experimental-storage-inspection --experimental-package-map --trace-warnings --global-search-paths --test --help --http-parser --prof --experimental-test-module-mocks --report-on-signal --enable-fips --secure-heap --experimental-global-navigator --test-shard --test-global-setup --test-rerun-failures --trace-tls --test-udp-no-try-send --extra-info-on-fatal-exception --experimental-top-level-await --trace-sigint --v8-options --test-randomize --test-timeout --force-fips --env-file-if-exists --openssl-shared-config --report-filename --max-old-space-size-percentage --v8-pool-size --conditions --test-coverage-branches --use-bundled-ca --test-reporter-destination --trace-require-module --allow-inspector --heap-prof --snapshot-blob --disable-proto --enable-source-maps --test-isolation --unhandled-rejections --network-family-autoselection-attempt-timeout --trace-env-native-stack --watch-kill-signal --openssl-legacy-provider --expose-gc --experimental-addon-modules --test-update-snapshots --zero-fill-buffers --eval --secure-heap-min --tls-min-v1.0 --debug-arraybuffer-allocations --trace-event-file-pattern --trace-sync-io --report-compact --force-context-aware --use-largepages --title --tls-max-v1.2 --cpu-prof-interval --icu-data-dir --test-coverage-exclude --allow-addons --trace-event-categories --openssl-config --heap-prof-name --report-dir --use-openssl-ca --test-only --check --test-reporter --preserve-symlinks-main --experimental-config-file --allow-fs-read --redirect-warnings --experimental-modules --experimental-worker-inspection --napi-modules --report-exclude-network --trace-uncaught --max-http-header-size --use-system-ca --cpu-prof-name --trace-exit --inspect-brk-node --cpu-prof-dir --node-snapshot --prof-process --insecure-http-parser --expose-internals --watch --security-revert --tls-min-v1.2 --experimental-specifier-resolution --cpu-prof --perf-basic-prof-only-functions --print --watch-path --perf-prof --experimental-stream-iter --trace-deprecation --experimental-repl-await --harmony-shadow-realm --tls-max-v1.3 --tls-min-v1.3 --tls-min-v1.1 --report-exclude-env --trace-env-js-stack --deprecation --stack-trace-limit --version --strip-types --experimental-vm-modules --tls-cipher-list --experimental-transform-types --enable-etw-stack-walking --force-node-api-uncaught-exceptions-policy --report-on-fatalerror --debug-brk --report-uncaught-exception --completion-bash --jitless --experimental-network-inspection --experimental-shadow-realm --test-concurrency --allow-wasi --loader --print <arg> -i --enable-network-family-autoselection --inspect= -pe -C --experimental-strip-types --inspect-brk= --inspect-wait= --es-module-specifier-resolution --debug-brk= --trace-events-enabled -h --report-directory --security-reverts --debug-port --inspect-brk-node= --debug= -v -p -r -e --prof-process --experimental-test-isolation -c --experimental-default-config-file' -- "${cur_word}") )
    return 0
  else
    COMPREPLY=( $(compgen -f "${cur_word}") )
    return 0
  fi
}
complete -o filenames -o nospace -o bashdefault -F _node_complete node node_g
