_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 --frozen-intrinsics --cpu-prof-dir --cpu-prof-interval --heap-prof --allow-fs-read --allow-addons --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-test-module-mocks --expose-internals --experimental-permission --entry-url --experimental-strip-types --experimental-modules --experimental-webstorage --experimental-loader --perf-prof --test-shard --experimental-worker --perf-basic-prof --test-reporter --localstorage-file --enable-source-maps --node-memory-debug --input-type --test-timeout --experimental-detect-module --network-family-autoselection --experimental-transform-types --heap-prof-name --heapsnapshot-near-heap-limit --pending-deprecation --experimental-test-snapshots --diagnostic-dir --tls-min-v1.3 --build-snapshot-config --interactive --test-coverage-include --network-family-autoselection-attempt-timeout --jitless --debug-arraybuffer-allocations --trace-exit --harmony-shadow-realm --inspect-wait --test-coverage-lines --force-fips --trace-promises --secure-heap-min --experimental-default-type --watch-path --trace-uncaught --cpu-prof-name --test-update-snapshots --tls-min-v1.0 --extra-info-on-fatal-exception --watch-preserve-output --prof-process --v8-pool-size --experimental-global-customevent --check --tls-keylog --use-largepages --use-bundled-ca --inspect-port --perf-prof-unwinding-info --node-snapshot --trace-event-file-pattern --addons --env-file-if-exists --disable-proto --tls-cipher-list --test-skip-pattern --experimental-abortcontroller --experimental-report --icu-data-dir --force-context-aware --experimental-wasi-unstable-preview1 --zero-fill-buffers --dns-result-order --http-parser --import --experimental-global-navigator --require --snapshot-blob --watch --report-compact --inspect-brk --preserve-symlinks-main --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 --disable-wasm-trap-handler --trace-tls --experimental-print-required-tla --expose-gc --allow-fs-write --redirect-warnings --tls-min-v1.2 --openssl-config --experimental-async-context-frame --insecure-http-parser --report-signal --tls-max-v1.2 --experimental-repl-await --v8-options --tls-min-v1.1 --test-reporter-destination --enable-fips --force-node-api-uncaught-exceptions-policy --stack-trace-limit --test-concurrency --max-semi-space-size --test-only --enable-etw-stack-walking --heapsnapshot-signal --inspect-publish-uid --experimental-fetch --global-search-paths --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 --report-on-signal --heap-prof-interval --napi-modules --debug-brk --throw-deprecation --experimental-sqlite --warnings --experimental-top-level-await --cpu-prof --test-coverage-branches --experimental-shadow-realm --test-udp-no-try-send --deprecation --debug --disallow-code-generation-from-strings --inspect-brk-node --experimental-websocket --debug-port --print <arg> --prof-process --enable-network-family-autoselection --es-module-specifier-resolution --inspect-brk= --loader --inspect-brk-node= -C --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
