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