@skillrecordings/cli 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/skill.mjs +27 -0
- package/dist/chunk-2NCCVTEE.js +22342 -0
- package/dist/chunk-2NCCVTEE.js.map +1 -0
- package/dist/chunk-3E3GYSZR.js +7071 -0
- package/dist/chunk-3E3GYSZR.js.map +1 -0
- package/dist/chunk-F4EM72IH.js +86 -0
- package/dist/chunk-F4EM72IH.js.map +1 -0
- package/dist/chunk-FGP7KUQW.js +432 -0
- package/dist/chunk-FGP7KUQW.js.map +1 -0
- package/dist/chunk-H3D6VCME.js +55 -0
- package/dist/chunk-H3D6VCME.js.map +1 -0
- package/dist/chunk-HK3PEWFD.js +208 -0
- package/dist/chunk-HK3PEWFD.js.map +1 -0
- package/dist/chunk-KEV3QKXP.js +4495 -0
- package/dist/chunk-KEV3QKXP.js.map +1 -0
- package/dist/chunk-MG37YDAK.js +882 -0
- package/dist/chunk-MG37YDAK.js.map +1 -0
- package/dist/chunk-MLNDSBZ4.js +482 -0
- package/dist/chunk-MLNDSBZ4.js.map +1 -0
- package/dist/chunk-N2WIV2JV.js +22 -0
- package/dist/chunk-N2WIV2JV.js.map +1 -0
- package/dist/chunk-PWWRCN5W.js +2067 -0
- package/dist/chunk-PWWRCN5W.js.map +1 -0
- package/dist/chunk-SKHBM3XP.js +7746 -0
- package/dist/chunk-SKHBM3XP.js.map +1 -0
- package/dist/chunk-WFANXVQG.js +64 -0
- package/dist/chunk-WFANXVQG.js.map +1 -0
- package/dist/chunk-WYKL32C3.js +275 -0
- package/dist/chunk-WYKL32C3.js.map +1 -0
- package/dist/chunk-ZNF7XD2S.js +134 -0
- package/dist/chunk-ZNF7XD2S.js.map +1 -0
- package/dist/config-AUAIYDSI.js +20 -0
- package/dist/config-AUAIYDSI.js.map +1 -0
- package/dist/fileFromPath-XN7LXIBI.js +134 -0
- package/dist/fileFromPath-XN7LXIBI.js.map +1 -0
- package/dist/getMachineId-bsd-KW2E7VK3.js +42 -0
- package/dist/getMachineId-bsd-KW2E7VK3.js.map +1 -0
- package/dist/getMachineId-darwin-ROXJUJX5.js +42 -0
- package/dist/getMachineId-darwin-ROXJUJX5.js.map +1 -0
- package/dist/getMachineId-linux-KVZEHQSU.js +34 -0
- package/dist/getMachineId-linux-KVZEHQSU.js.map +1 -0
- package/dist/getMachineId-unsupported-PPRILPPA.js +25 -0
- package/dist/getMachineId-unsupported-PPRILPPA.js.map +1 -0
- package/dist/getMachineId-win-IIF36LEJ.js +44 -0
- package/dist/getMachineId-win-IIF36LEJ.js.map +1 -0
- package/dist/index.js +112703 -0
- package/dist/index.js.map +1 -0
- package/dist/lib-R6DEEJCP.js +7623 -0
- package/dist/lib-R6DEEJCP.js.map +1 -0
- package/dist/pipeline-IAVVAKTU.js +120 -0
- package/dist/pipeline-IAVVAKTU.js.map +1 -0
- package/dist/query-NTP5NVXN.js +25 -0
- package/dist/query-NTP5NVXN.js.map +1 -0
- package/dist/routing-BAEPFB7V.js +390 -0
- package/dist/routing-BAEPFB7V.js.map +1 -0
- package/dist/stripe-lookup-charge-EPRUMZDL.js +56 -0
- package/dist/stripe-lookup-charge-EPRUMZDL.js.map +1 -0
- package/dist/stripe-payment-history-SJPKA63N.js +67 -0
- package/dist/stripe-payment-history-SJPKA63N.js.map +1 -0
- package/dist/stripe-subscription-status-L4Z65GB3.js +58 -0
- package/dist/stripe-subscription-status-L4Z65GB3.js.map +1 -0
- package/dist/stripe-verify-refund-FZDKCIUQ.js +54 -0
- package/dist/stripe-verify-refund-FZDKCIUQ.js.map +1 -0
- package/dist/support-memory-WSG7SDKG.js +10 -0
- package/dist/support-memory-WSG7SDKG.js.map +1 -0
- package/package.json +10 -7
- package/.env.encrypted +0 -0
- package/CHANGELOG.md +0 -35
- package/data/tt-archive-dataset.json +0 -1
- package/data/validate-test-dataset.json +0 -97
- package/docs/CLI-AUTH.md +0 -504
- package/preload.ts +0 -18
- package/src/__tests__/init.test.ts +0 -74
- package/src/alignment-test.ts +0 -64
- package/src/check-apps.ts +0 -16
- package/src/commands/auth/decrypt.ts +0 -123
- package/src/commands/auth/encrypt.ts +0 -81
- package/src/commands/auth/index.ts +0 -50
- package/src/commands/auth/keygen.ts +0 -41
- package/src/commands/auth/status.ts +0 -164
- package/src/commands/axiom/forensic.ts +0 -868
- package/src/commands/axiom/index.ts +0 -697
- package/src/commands/build-dataset.ts +0 -311
- package/src/commands/db-status.ts +0 -47
- package/src/commands/deploys.ts +0 -219
- package/src/commands/eval-local/compare.ts +0 -171
- package/src/commands/eval-local/health.ts +0 -212
- package/src/commands/eval-local/index.ts +0 -76
- package/src/commands/eval-local/real-tools.ts +0 -416
- package/src/commands/eval-local/run.ts +0 -1168
- package/src/commands/eval-local/score-production.ts +0 -256
- package/src/commands/eval-local/seed.ts +0 -276
- package/src/commands/eval-pipeline/index.ts +0 -53
- package/src/commands/eval-pipeline/real-tools.ts +0 -492
- package/src/commands/eval-pipeline/run.ts +0 -1316
- package/src/commands/eval-pipeline/seed.ts +0 -395
- package/src/commands/eval-prompt.ts +0 -496
- package/src/commands/eval.test.ts +0 -253
- package/src/commands/eval.ts +0 -108
- package/src/commands/faq-classify.ts +0 -460
- package/src/commands/faq-cluster.ts +0 -135
- package/src/commands/faq-extract.ts +0 -249
- package/src/commands/faq-mine.ts +0 -432
- package/src/commands/faq-review.ts +0 -426
- package/src/commands/front/index.ts +0 -351
- package/src/commands/front/pull-conversations.ts +0 -275
- package/src/commands/front/tags.ts +0 -825
- package/src/commands/front-cache.ts +0 -1277
- package/src/commands/front-stats.ts +0 -75
- package/src/commands/health.test.ts +0 -82
- package/src/commands/health.ts +0 -362
- package/src/commands/init.test.ts +0 -89
- package/src/commands/init.ts +0 -106
- package/src/commands/inngest/client.ts +0 -294
- package/src/commands/inngest/events.ts +0 -296
- package/src/commands/inngest/investigate.ts +0 -382
- package/src/commands/inngest/runs.ts +0 -149
- package/src/commands/inngest/signal.ts +0 -143
- package/src/commands/kb-sync.ts +0 -498
- package/src/commands/memory/find.ts +0 -135
- package/src/commands/memory/get.ts +0 -87
- package/src/commands/memory/index.ts +0 -97
- package/src/commands/memory/stats.ts +0 -163
- package/src/commands/memory/store.ts +0 -49
- package/src/commands/memory/vote.ts +0 -159
- package/src/commands/pipeline.ts +0 -127
- package/src/commands/responses.ts +0 -856
- package/src/commands/tools.ts +0 -293
- package/src/commands/wizard.ts +0 -319
- package/src/index.ts +0 -172
- package/src/lib/crypto.ts +0 -56
- package/src/lib/env-loader.ts +0 -206
- package/src/lib/onepassword.ts +0 -137
- package/src/test-agent-local.ts +0 -115
- package/tsconfig.json +0 -11
- package/vitest.config.ts +0 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/configurationOptionDescriptions.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/createDuckDBValueConverter.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBTypeId.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/sql.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/conversion/displayStringForDuckDBValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBArrayValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBBitValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/conversion/bytesFromString.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/conversion/stringFromBlob.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBBlobValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/conversion/dateTimeStringConversion.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBDateValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/conversion/stringFromDecimal.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBDecimalValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBIntervalValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBListValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBMapValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBStructValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimeNSValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimestampSecondsValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimestampMillisecondsValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimestampNanosecondsValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimestampValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimestampTZValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimeTZValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBTimeValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBUnionValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBUUIDValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/DuckDBValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/values/index.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/createValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBType.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBLogicalType.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/typeForValue.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBAppender.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBClientContext.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBVector.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBDataChunk.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBValueConverters.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/JSDuckDBValueConverter.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/JsonDuckDBValueConverter.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/convertColumnsFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/convertColumnsObjectFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/convertRowObjectsFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/convertRowsFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/getColumnsFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/getColumnsObjectFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/getRowObjectsFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/getRowsFromChunks.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBResult.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBMaterializedResult.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/createResult.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBResultReader.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/sleep.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBPendingResult.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBPreparedStatement.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBExtractedStatements.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/createConfig.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBInstanceCache.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBInstance.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBPreparedStatementWeakRefCollection.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBConnection.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBFunctionInfo.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBPreparedStatementCollection.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBScalarFunction.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/DuckDBValueConverter.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/enums.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/JS.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/Json.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/version.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/duckdb.js","../../../node_modules/.bun/@duckdb+node-api@1.4.4-r.1/node_modules/@duckdb/node-api/lib/index.js"],"sourcesContent":["\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.configurationOptionDescriptions = configurationOptionDescriptions;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nfunction configurationOptionDescriptions() {\n const descriptions = {};\n const count = node_bindings_1.default.config_count();\n for (let i = 0; i < count; i++) {\n const { name, description } = node_bindings_1.default.get_config_flag(i);\n descriptions[name] = description;\n }\n return descriptions;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createDuckDBValueConverter = createDuckDBValueConverter;\nfunction createDuckDBValueConverter(convertersByTypeId) {\n return (value, type, converter) => {\n if (value == null) {\n return null;\n }\n const converterForTypeId = convertersByTypeId[type.typeId];\n if (!converterForTypeId) {\n throw new Error(`No converter for typeId: ${type.typeId}`);\n }\n return converterForTypeId(value, type, converter);\n };\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTypeId = void 0;\n// copy of duckdb_type, with names shortened\nvar DuckDBTypeId;\n(function (DuckDBTypeId) {\n DuckDBTypeId[DuckDBTypeId[\"INVALID\"] = 0] = \"INVALID\";\n DuckDBTypeId[DuckDBTypeId[\"BOOLEAN\"] = 1] = \"BOOLEAN\";\n DuckDBTypeId[DuckDBTypeId[\"TINYINT\"] = 2] = \"TINYINT\";\n DuckDBTypeId[DuckDBTypeId[\"SMALLINT\"] = 3] = \"SMALLINT\";\n DuckDBTypeId[DuckDBTypeId[\"INTEGER\"] = 4] = \"INTEGER\";\n DuckDBTypeId[DuckDBTypeId[\"BIGINT\"] = 5] = \"BIGINT\";\n DuckDBTypeId[DuckDBTypeId[\"UTINYINT\"] = 6] = \"UTINYINT\";\n DuckDBTypeId[DuckDBTypeId[\"USMALLINT\"] = 7] = \"USMALLINT\";\n DuckDBTypeId[DuckDBTypeId[\"UINTEGER\"] = 8] = \"UINTEGER\";\n DuckDBTypeId[DuckDBTypeId[\"UBIGINT\"] = 9] = \"UBIGINT\";\n DuckDBTypeId[DuckDBTypeId[\"FLOAT\"] = 10] = \"FLOAT\";\n DuckDBTypeId[DuckDBTypeId[\"DOUBLE\"] = 11] = \"DOUBLE\";\n DuckDBTypeId[DuckDBTypeId[\"TIMESTAMP\"] = 12] = \"TIMESTAMP\";\n DuckDBTypeId[DuckDBTypeId[\"DATE\"] = 13] = \"DATE\";\n DuckDBTypeId[DuckDBTypeId[\"TIME\"] = 14] = \"TIME\";\n DuckDBTypeId[DuckDBTypeId[\"INTERVAL\"] = 15] = \"INTERVAL\";\n DuckDBTypeId[DuckDBTypeId[\"HUGEINT\"] = 16] = \"HUGEINT\";\n DuckDBTypeId[DuckDBTypeId[\"UHUGEINT\"] = 32] = \"UHUGEINT\";\n DuckDBTypeId[DuckDBTypeId[\"VARCHAR\"] = 17] = \"VARCHAR\";\n DuckDBTypeId[DuckDBTypeId[\"BLOB\"] = 18] = \"BLOB\";\n DuckDBTypeId[DuckDBTypeId[\"DECIMAL\"] = 19] = \"DECIMAL\";\n DuckDBTypeId[DuckDBTypeId[\"TIMESTAMP_S\"] = 20] = \"TIMESTAMP_S\";\n DuckDBTypeId[DuckDBTypeId[\"TIMESTAMP_MS\"] = 21] = \"TIMESTAMP_MS\";\n DuckDBTypeId[DuckDBTypeId[\"TIMESTAMP_NS\"] = 22] = \"TIMESTAMP_NS\";\n DuckDBTypeId[DuckDBTypeId[\"ENUM\"] = 23] = \"ENUM\";\n DuckDBTypeId[DuckDBTypeId[\"LIST\"] = 24] = \"LIST\";\n DuckDBTypeId[DuckDBTypeId[\"STRUCT\"] = 25] = \"STRUCT\";\n DuckDBTypeId[DuckDBTypeId[\"MAP\"] = 26] = \"MAP\";\n DuckDBTypeId[DuckDBTypeId[\"ARRAY\"] = 33] = \"ARRAY\";\n DuckDBTypeId[DuckDBTypeId[\"UUID\"] = 27] = \"UUID\";\n DuckDBTypeId[DuckDBTypeId[\"UNION\"] = 28] = \"UNION\";\n DuckDBTypeId[DuckDBTypeId[\"BIT\"] = 29] = \"BIT\";\n DuckDBTypeId[DuckDBTypeId[\"TIME_TZ\"] = 30] = \"TIME_TZ\";\n DuckDBTypeId[DuckDBTypeId[\"TIMESTAMP_TZ\"] = 31] = \"TIMESTAMP_TZ\";\n DuckDBTypeId[DuckDBTypeId[\"ANY\"] = 34] = \"ANY\";\n DuckDBTypeId[DuckDBTypeId[\"BIGNUM\"] = 35] = \"BIGNUM\";\n DuckDBTypeId[DuckDBTypeId[\"SQLNULL\"] = 36] = \"SQLNULL\";\n DuckDBTypeId[DuckDBTypeId[\"STRING_LITERAL\"] = 37] = \"STRING_LITERAL\";\n DuckDBTypeId[DuckDBTypeId[\"INTEGER_LITERAL\"] = 38] = \"INTEGER_LITERAL\";\n DuckDBTypeId[DuckDBTypeId[\"TIME_NS\"] = 39] = \"TIME_NS\";\n})(DuckDBTypeId || (exports.DuckDBTypeId = DuckDBTypeId = {}));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.quotedString = quotedString;\nexports.quotedIdentifier = quotedIdentifier;\nfunction quotedString(input) {\n return `'${input.replaceAll(`'`, `''`)}'`;\n}\nfunction quotedIdentifier(input) {\n return `\"${input.replaceAll(`\"`, `\"\"`)}\"`;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.displayStringForDuckDBValue = displayStringForDuckDBValue;\nconst sql_1 = require(\"../sql\");\nfunction displayStringForDuckDBValue(value) {\n if (value == null) {\n return 'NULL';\n }\n if (typeof value === 'string') {\n return (0, sql_1.quotedString)(value);\n }\n return value.toString();\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBArrayValue = void 0;\nexports.arrayValue = arrayValue;\nconst displayStringForDuckDBValue_1 = require(\"../conversion/displayStringForDuckDBValue\");\nclass DuckDBArrayValue {\n items;\n constructor(items) {\n this.items = items;\n }\n toString() {\n return `[${this.items.map(displayStringForDuckDBValue_1.displayStringForDuckDBValue).join(', ')}]`;\n }\n}\nexports.DuckDBArrayValue = DuckDBArrayValue;\nfunction arrayValue(items) {\n return new DuckDBArrayValue(items);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBBitValue = void 0;\nexports.bitValue = bitValue;\nclass DuckDBBitValue {\n data;\n constructor(data) {\n this.data = data;\n }\n padding() {\n return this.data[0];\n }\n get length() {\n return (this.data.length - 1) * 8 - this.padding();\n }\n getBool(index) {\n const offset = index + this.padding();\n const dataIndex = Math.floor(offset / 8) + 1;\n const byte = this.data[dataIndex] >> (7 - (offset % 8));\n return (byte & 1) !== 0;\n }\n toBools() {\n const bools = [];\n const length = this.length;\n for (let i = 0; i < length; i++) {\n bools.push(this.getBool(i));\n }\n return bools;\n }\n getBit(index) {\n return this.getBool(index) ? 1 : 0;\n }\n toBits() {\n const bits = [];\n const length = this.length;\n for (let i = 0; i < length; i++) {\n bits.push(this.getBit(i));\n }\n return bits;\n }\n toString() {\n const length = this.length;\n const chars = Array.from({ length });\n for (let i = 0; i < length; i++) {\n chars[i] = this.getBool(i) ? '1' : '0';\n }\n return chars.join('');\n }\n static fromString(str, on = '1') {\n return DuckDBBitValue.fromLengthAndPredicate(str.length, i => str[i] === on);\n }\n static fromBits(bits, on = 1) {\n return DuckDBBitValue.fromLengthAndPredicate(bits.length, i => bits[i] === on);\n }\n static fromBools(bools) {\n return DuckDBBitValue.fromLengthAndPredicate(bools.length, i => bools[i]);\n }\n static fromLengthAndPredicate(length, predicate) {\n const byteCount = Math.ceil(length / 8) + 1;\n const paddingBitCount = (8 - (length % 8)) % 8;\n const data = new Uint8Array(byteCount);\n let byteIndex = 0;\n // first byte contains count of padding bits\n data[byteIndex++] = paddingBitCount;\n let byte = 0;\n let byteBit = 0;\n // padding consists of 1s in MSB of second byte\n while (byteBit < paddingBitCount) {\n byte <<= 1;\n byte |= 1;\n byteBit++;\n }\n let bitIndex = 0;\n while (byteIndex < byteCount) {\n while (byteBit < 8) {\n byte <<= 1;\n if (predicate(bitIndex++)) {\n byte |= 1;\n }\n byteBit++;\n }\n data[byteIndex++] = byte;\n byte = 0;\n byteBit = 0;\n }\n return new DuckDBBitValue(data);\n }\n}\nexports.DuckDBBitValue = DuckDBBitValue;\nfunction bitValue(input) {\n if (typeof input === 'string') {\n return DuckDBBitValue.fromString(input);\n }\n if (input.length > 0) {\n if (typeof input[0] === 'boolean') {\n return DuckDBBitValue.fromBools(input);\n }\n else if (typeof input[0] === 'number') {\n return DuckDBBitValue.fromBits(input);\n }\n }\n return DuckDBBitValue.fromLengthAndPredicate(0, _ => false);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bytesFromString = bytesFromString;\nconst textEncoder = new TextEncoder();\nfunction bytesFromString(str) {\n return textEncoder.encode(str);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringFromBlob = stringFromBlob;\nexports.stringFromBlobStringConcat = stringFromBlobStringConcat;\nexports.stringFromBlobArrayJoin = stringFromBlobArrayJoin;\n/** Matches BLOB-to-VARCHAR conversion behavior of DuckDB. */\nfunction stringFromBlob(bytes) {\n // String concatenation appears to be faster for this function at smaller sizes.\n // Threshold of (2^16) experimentally determined on a MacBook Pro (M2 Max).\n // See stringFromBlob.bench.ts.\n if (bytes.length <= 65536) {\n return stringFromBlobStringConcat(bytes);\n }\n return stringFromBlobArrayJoin(bytes);\n}\nfunction stringFromBlobStringConcat(bytes) {\n let byteString = '';\n for (const byte of bytes) {\n if (byte <= 0x1f ||\n byte === 0x22 /* double quote */ ||\n byte === 0x27 /* single quote */ ||\n byte >= 0x7f) {\n byteString += `\\\\x${byte.toString(16).toUpperCase().padStart(2, '0')}`;\n }\n else {\n byteString += String.fromCharCode(byte);\n }\n }\n return byteString;\n}\nfunction stringFromBlobArrayJoin(bytes) {\n const byteStrings = [];\n for (const byte of bytes) {\n if (byte <= 0x1f ||\n byte === 0x22 /* double quote */ ||\n byte === 0x27 /* single quote */ ||\n byte >= 0x7f) {\n byteStrings.push(`\\\\x${byte.toString(16).toUpperCase().padStart(2, '0')}`);\n }\n else {\n byteStrings.push(String.fromCharCode(byte));\n }\n }\n return byteStrings.join('');\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBBlobValue = void 0;\nexports.blobValue = blobValue;\nconst bytesFromString_1 = require(\"../conversion/bytesFromString\");\nconst stringFromBlob_1 = require(\"../conversion/stringFromBlob\");\nclass DuckDBBlobValue {\n bytes;\n constructor(bytes) {\n this.bytes = bytes;\n }\n /** Matches BLOB-to-VARCHAR conversion behavior of DuckDB. */\n toString() {\n return (0, stringFromBlob_1.stringFromBlob)(this.bytes);\n }\n static fromString(str) {\n return new DuckDBBlobValue(Buffer.from((0, bytesFromString_1.bytesFromString)(str)));\n }\n}\nexports.DuckDBBlobValue = DuckDBBlobValue;\nfunction blobValue(input) {\n if (typeof input === 'string') {\n return DuckDBBlobValue.fromString(input);\n }\n return new DuckDBBlobValue(input);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getDuckDBDateStringFromYearMonthDay = getDuckDBDateStringFromYearMonthDay;\nexports.getDuckDBDateStringFromDays = getDuckDBDateStringFromDays;\nexports.getTimezoneOffsetString = getTimezoneOffsetString;\nexports.getAbsoluteOffsetStringFromParts = getAbsoluteOffsetStringFromParts;\nexports.getOffsetStringFromAbsoluteSeconds = getOffsetStringFromAbsoluteSeconds;\nexports.getOffsetStringFromSeconds = getOffsetStringFromSeconds;\nexports.getDuckDBTimeStringFromParts = getDuckDBTimeStringFromParts;\nexports.getDuckDBTimeStringFromPartsNS = getDuckDBTimeStringFromPartsNS;\nexports.getDuckDBTimeStringFromPositiveMicroseconds = getDuckDBTimeStringFromPositiveMicroseconds;\nexports.getDuckDBTimeStringFromPositiveNanoseconds = getDuckDBTimeStringFromPositiveNanoseconds;\nexports.getDuckDBTimeStringFromMicrosecondsInDay = getDuckDBTimeStringFromMicrosecondsInDay;\nexports.getDuckDBTimeStringFromNanosecondsInDay = getDuckDBTimeStringFromNanosecondsInDay;\nexports.getDuckDBTimeStringFromMicroseconds = getDuckDBTimeStringFromMicroseconds;\nexports.getDuckDBTimestampStringFromDaysAndMicroseconds = getDuckDBTimestampStringFromDaysAndMicroseconds;\nexports.getDuckDBTimestampStringFromDaysAndNanoseconds = getDuckDBTimestampStringFromDaysAndNanoseconds;\nexports.getDuckDBTimestampStringFromMicroseconds = getDuckDBTimestampStringFromMicroseconds;\nexports.getDuckDBTimestampStringFromSeconds = getDuckDBTimestampStringFromSeconds;\nexports.getDuckDBTimestampStringFromMilliseconds = getDuckDBTimestampStringFromMilliseconds;\nexports.getDuckDBTimestampStringFromNanoseconds = getDuckDBTimestampStringFromNanoseconds;\nexports.getDuckDBIntervalString = getDuckDBIntervalString;\nconst DAYS_IN_400_YEARS = 146097; // (((365 * 4 + 1) * 25) - 1) * 4 + 1\nconst MILLISECONDS_PER_DAY_NUM = 86400000; // 1000 * 60 * 60 * 24\nconst MICROSECONDS_PER_SECOND = 1000000n;\nconst MICROSECONDS_PER_MILLISECOND = 1000n;\nconst NANOSECONDS_PER_SECOND = 1000000000n;\nconst SECONDS_PER_MINUTE = 60n;\nconst MINUTES_PER_HOUR = 60n;\nconst MICROSECONDS_PER_DAY = 86400000000n; // 24 * 60 * 60 * 1000000\nconst NANOSECONDS_PER_DAY = 86400000000000n; // 24 * 60 * 60 * 1000000000\nconst NEGATIVE_INFINITY_TIMESTAMP = -9223372036854775807n; // -(2^63-1)\nconst POSITIVE_INFINITY_TIMESTAMP = 9223372036854775807n; // 2^63-1\nfunction getDuckDBDateStringFromYearMonthDay(year, month, dayOfMonth) {\n const yearStr = String(Math.abs(year)).padStart(4, '0');\n const monthStr = String(month).padStart(2, '0');\n const dayOfMonthStr = String(dayOfMonth).padStart(2, '0');\n return `${yearStr}-${monthStr}-${dayOfMonthStr}${year < 0 ? ' (BC)' : ''}`;\n}\nfunction getDuckDBDateStringFromDays(days) {\n const absDays = Math.abs(days);\n const sign = days < 0 ? -1 : 1;\n // 400 years is the shortest interval with a fixed number of days. (Leap years and different length months can result\n // in shorter intervals having different number of days.) By separating the number of 400 year intervals from the\n // interval covered by the remaining days, we can guarantee that the date resulting from shifting the epoch by the\n // remaining interval is within the valid range of the JS Date object. This allows us to use JS Date to calculate the\n // year, month, and day of month for the date represented by the remaining interval, thus accounting for leap years\n // and different length months. We can then safely add back the years from the 400 year intervals, because the month\n // and day of month won't change when a date is shifted by a whole number of such intervals.\n const num400YearIntervals = Math.floor(absDays / DAYS_IN_400_YEARS);\n const yearsFrom400YearIntervals = sign * num400YearIntervals * 400;\n const absDaysFromRemainingInterval = absDays % DAYS_IN_400_YEARS;\n const millisecondsFromRemainingInterval = sign * absDaysFromRemainingInterval * MILLISECONDS_PER_DAY_NUM;\n const date = new Date(millisecondsFromRemainingInterval);\n let year = yearsFrom400YearIntervals + date.getUTCFullYear();\n if (year < 0) {\n year--; // correct for non-existence of year zero\n }\n const month = date.getUTCMonth() + 1; // getUTCMonth returns zero-indexed month, but we want a one-index month for display\n const dayOfMonth = date.getUTCDate(); // getUTCDate returns one-indexed day-of-month\n return getDuckDBDateStringFromYearMonthDay(year, month, dayOfMonth);\n}\nfunction getTimezoneOffsetString(timezoneOffsetInMinutes) {\n if (timezoneOffsetInMinutes === undefined) {\n return undefined;\n }\n const negative = timezoneOffsetInMinutes < 0;\n const positiveMinutes = Math.abs(timezoneOffsetInMinutes);\n const minutesPart = positiveMinutes % 60;\n const hoursPart = Math.floor(positiveMinutes / 60);\n const minutesStr = minutesPart !== 0 ? String(minutesPart).padStart(2, '0') : '';\n const hoursStr = String(hoursPart).padStart(2, '0');\n return `${negative ? '-' : '+'}${hoursStr}${minutesStr ? `:${minutesStr}` : ''}`;\n}\nfunction getAbsoluteOffsetStringFromParts(hoursPart, minutesPart, secondsPart) {\n const hoursStr = String(hoursPart).padStart(2, '0');\n const minutesStr = minutesPart !== 0 || secondsPart !== 0\n ? String(minutesPart).padStart(2, '0')\n : '';\n const secondsStr = secondsPart !== 0 ? String(secondsPart).padStart(2, '0') : '';\n let result = hoursStr;\n if (minutesStr) {\n result += `:${minutesStr}`;\n if (secondsStr) {\n result += `:${secondsStr}`;\n }\n }\n return result;\n}\nfunction getOffsetStringFromAbsoluteSeconds(absoluteOffsetInSeconds) {\n const secondsPart = absoluteOffsetInSeconds % 60;\n const minutes = Math.floor(absoluteOffsetInSeconds / 60);\n const minutesPart = minutes % 60;\n const hoursPart = Math.floor(minutes / 60);\n return getAbsoluteOffsetStringFromParts(hoursPart, minutesPart, secondsPart);\n}\nfunction getOffsetStringFromSeconds(offsetInSeconds) {\n const negative = offsetInSeconds < 0;\n const absoluteOffsetInSeconds = negative ? -offsetInSeconds : offsetInSeconds;\n const absoluteString = getOffsetStringFromAbsoluteSeconds(absoluteOffsetInSeconds);\n return `${negative ? '-' : '+'}${absoluteString}`;\n}\nfunction getDuckDBTimeStringFromParts(hoursPart, minutesPart, secondsPart, microsecondsPart) {\n const hoursStr = String(hoursPart).padStart(2, '0');\n const minutesStr = String(minutesPart).padStart(2, '0');\n const secondsStr = String(secondsPart).padStart(2, '0');\n const microsecondsStr = String(microsecondsPart)\n .padStart(6, '0')\n .replace(/0+$/, '');\n return `${hoursStr}:${minutesStr}:${secondsStr}${microsecondsStr.length > 0 ? `.${microsecondsStr}` : ''}`;\n}\nfunction getDuckDBTimeStringFromPartsNS(hoursPart, minutesPart, secondsPart, nanosecondsPart) {\n const hoursStr = String(hoursPart).padStart(2, '0');\n const minutesStr = String(minutesPart).padStart(2, '0');\n const secondsStr = String(secondsPart).padStart(2, '0');\n const nanosecondsStr = String(nanosecondsPart)\n .padStart(9, '0')\n .replace(/0+$/, '');\n return `${hoursStr}:${minutesStr}:${secondsStr}${nanosecondsStr.length > 0 ? `.${nanosecondsStr}` : ''}`;\n}\nfunction getDuckDBTimeStringFromPositiveMicroseconds(positiveMicroseconds) {\n const microsecondsPart = positiveMicroseconds % MICROSECONDS_PER_SECOND;\n const seconds = positiveMicroseconds / MICROSECONDS_PER_SECOND;\n const secondsPart = seconds % SECONDS_PER_MINUTE;\n const minutes = seconds / SECONDS_PER_MINUTE;\n const minutesPart = minutes % MINUTES_PER_HOUR;\n const hoursPart = minutes / MINUTES_PER_HOUR;\n return getDuckDBTimeStringFromParts(hoursPart, minutesPart, secondsPart, microsecondsPart);\n}\nfunction getDuckDBTimeStringFromPositiveNanoseconds(positiveNanoseconds) {\n const nanosecondsPart = positiveNanoseconds % NANOSECONDS_PER_SECOND;\n const seconds = positiveNanoseconds / NANOSECONDS_PER_SECOND;\n const secondsPart = seconds % SECONDS_PER_MINUTE;\n const minutes = seconds / SECONDS_PER_MINUTE;\n const minutesPart = minutes % MINUTES_PER_HOUR;\n const hoursPart = minutes / MINUTES_PER_HOUR;\n return getDuckDBTimeStringFromPartsNS(hoursPart, minutesPart, secondsPart, nanosecondsPart);\n}\nfunction getDuckDBTimeStringFromMicrosecondsInDay(microsecondsInDay) {\n const positiveMicroseconds = microsecondsInDay < 0\n ? microsecondsInDay + MICROSECONDS_PER_DAY\n : microsecondsInDay;\n return getDuckDBTimeStringFromPositiveMicroseconds(positiveMicroseconds);\n}\nfunction getDuckDBTimeStringFromNanosecondsInDay(nanosecondsInDay) {\n const positiveNanoseconds = nanosecondsInDay < 0\n ? nanosecondsInDay + NANOSECONDS_PER_DAY\n : nanosecondsInDay;\n return getDuckDBTimeStringFromPositiveNanoseconds(positiveNanoseconds);\n}\nfunction getDuckDBTimeStringFromMicroseconds(microseconds) {\n const negative = microseconds < 0;\n const positiveMicroseconds = negative ? -microseconds : microseconds;\n const positiveString = getDuckDBTimeStringFromPositiveMicroseconds(positiveMicroseconds);\n return negative ? `-${positiveString}` : positiveString;\n}\nfunction getDuckDBTimestampStringFromDaysAndMicroseconds(days, microsecondsInDay, timezonePart) {\n // This conversion of BigInt to Number is safe, because the largest absolute value that `days` can has is 106751991,\n // which fits without loss of precision in a JS Number. (106751991 = (2^63-1) / MICROSECONDS_PER_DAY)\n const dateStr = getDuckDBDateStringFromDays(Number(days));\n const timeStr = getDuckDBTimeStringFromMicrosecondsInDay(microsecondsInDay);\n return `${dateStr} ${timeStr}${timezonePart ?? ''}`;\n}\nfunction getDuckDBTimestampStringFromDaysAndNanoseconds(days, nanosecondsInDay) {\n // This conversion of BigInt to Number is safe, because the largest absolute value that `days` can has is 106751\n // which fits without loss of precision in a JS Number. (106751 = (2^63-1) / NANOSECONDS_PER_DAY)\n const dateStr = getDuckDBDateStringFromDays(Number(days));\n const timeStr = getDuckDBTimeStringFromNanosecondsInDay(nanosecondsInDay);\n return `${dateStr} ${timeStr}`;\n}\nfunction getDuckDBTimestampStringFromMicroseconds(microseconds, timezoneOffsetInMinutes) {\n // Note that -infinity and infinity are only representable in TIMESTAMP (and TIMESTAMPTZ), not the other timestamp\n // variants. This is by-design and matches DuckDB.\n if (microseconds === NEGATIVE_INFINITY_TIMESTAMP) {\n return '-infinity';\n }\n if (microseconds === POSITIVE_INFINITY_TIMESTAMP) {\n return 'infinity';\n }\n const offsetMicroseconds = timezoneOffsetInMinutes !== undefined\n ? microseconds +\n BigInt(timezoneOffsetInMinutes) *\n MICROSECONDS_PER_SECOND *\n SECONDS_PER_MINUTE\n : microseconds;\n let days = offsetMicroseconds / MICROSECONDS_PER_DAY;\n let microsecondsPart = offsetMicroseconds % MICROSECONDS_PER_DAY;\n if (microsecondsPart < 0) {\n days--;\n microsecondsPart += MICROSECONDS_PER_DAY;\n }\n return getDuckDBTimestampStringFromDaysAndMicroseconds(days, microsecondsPart, getTimezoneOffsetString(timezoneOffsetInMinutes));\n}\nfunction getDuckDBTimestampStringFromSeconds(seconds) {\n return getDuckDBTimestampStringFromMicroseconds(seconds * MICROSECONDS_PER_SECOND);\n}\nfunction getDuckDBTimestampStringFromMilliseconds(milliseconds) {\n return getDuckDBTimestampStringFromMicroseconds(milliseconds * MICROSECONDS_PER_MILLISECOND);\n}\nfunction getDuckDBTimestampStringFromNanoseconds(nanoseconds) {\n let days = nanoseconds / NANOSECONDS_PER_DAY;\n let nanosecondsPart = nanoseconds % NANOSECONDS_PER_DAY;\n if (nanosecondsPart < 0) {\n days--;\n nanosecondsPart += NANOSECONDS_PER_DAY;\n }\n return getDuckDBTimestampStringFromDaysAndNanoseconds(days, nanosecondsPart);\n}\n// Assumes baseUnit can be pluralized by adding an 's'.\nfunction numberAndUnit(value, baseUnit) {\n return `${value} ${baseUnit}${Math.abs(value) !== 1 ? 's' : ''}`;\n}\nfunction getDuckDBIntervalString(months, days, microseconds) {\n const parts = [];\n if (months !== 0) {\n const sign = months < 0 ? -1 : 1;\n const absMonths = Math.abs(months);\n const absYears = Math.floor(absMonths / 12);\n const years = sign * absYears;\n const extraMonths = sign * (absMonths - absYears * 12);\n if (years !== 0) {\n parts.push(numberAndUnit(years, 'year'));\n }\n if (extraMonths !== 0) {\n parts.push(numberAndUnit(extraMonths, 'month'));\n }\n }\n if (days !== 0) {\n parts.push(numberAndUnit(days, 'day'));\n }\n if (microseconds !== 0n) {\n parts.push(getDuckDBTimeStringFromMicroseconds(microseconds));\n }\n if (parts.length > 0) {\n return parts.join(' ');\n }\n return '00:00:00';\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBDateValue = void 0;\nexports.dateValue = dateValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBDateValue {\n days;\n constructor(days) {\n this.days = days;\n }\n get isFinite() {\n return node_bindings_1.default.is_finite_date(this);\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBDateStringFromDays)(this.days);\n }\n toParts() {\n return node_bindings_1.default.from_date(this);\n }\n static fromParts(parts) {\n return new DuckDBDateValue(node_bindings_1.default.to_date(parts).days);\n }\n static Epoch = new DuckDBDateValue(0);\n static Max = new DuckDBDateValue(2 ** 31 - 2);\n static Min = new DuckDBDateValue(-(2 ** 31 - 2));\n static PosInf = new DuckDBDateValue(2 ** 31 - 1);\n static NegInf = new DuckDBDateValue(-(2 ** 31 - 1));\n}\nexports.DuckDBDateValue = DuckDBDateValue;\nfunction dateValue(daysOrParts) {\n if (typeof daysOrParts === 'number') {\n return new DuckDBDateValue(daysOrParts);\n }\n return DuckDBDateValue.fromParts(daysOrParts);\n}\n","\"use strict\";\n/**\n * Decimal string formatting.\n *\n * Supports a subset of the functionality of `BigInt.prototype.toLocaleString` for locale-specific formatting.\n */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringFromDecimal = stringFromDecimal;\n/*\n * Get the decimal separator for a given locale.\n * Somewhat expensive, so use getCachedDecimalSeparator if you need to call this multiple times.\n */\nfunction getDecimalSeparator(locales) {\n const decimalSeparator = new Intl.NumberFormat(locales, { useGrouping: false })\n .formatToParts(0.1)\n .find((part) => part.type === 'decimal')?.value ?? '.';\n return decimalSeparator;\n}\n/*\n * Get the decimal separator for a given locale, and cache the result.\n */\nconst cachedDecimalSeparators = {};\nfunction getCachedDecimalSeparator(locales) {\n const cacheKey = JSON.stringify(locales);\n if (cacheKey in cachedDecimalSeparators) {\n return cachedDecimalSeparators[cacheKey];\n }\n const decimalSeparator = getDecimalSeparator(locales);\n cachedDecimalSeparators[cacheKey] = decimalSeparator;\n return decimalSeparator;\n}\n// Helper function to format whole part of a decimal value.\n// Note that we explicitly omit 'minimumFractionDigits' and 'maximumFractionDigits' from the options\n// passed to toLocaleString, because they are only relevant for the fractional part of the number, and\n// would result in formatting the whole part as a real number, which we don't want.\nfunction formatWholePart(localeOptions, val) {\n if (localeOptions) {\n const { minimumFractionDigits: _minFD, maximumFractionDigits: _maxFD, ...restOptions } = localeOptions.options ?? {};\n return val.toLocaleString(localeOptions?.locales, restOptions);\n }\n return String(val);\n}\n// Format the fractional part of a decimal value\n// Note that we must handle minimumFractionDigits and maximumFractionDigits ourselves, and that\n// we don't apply `useGrouping` because that only applies to the whole part of the number.\nfunction formatFractionalPart(localeOptions, val, scale) {\n const fractionalPartStr = String(val).padStart(scale, '0');\n if (!localeOptions) {\n return fractionalPartStr;\n }\n const minFracDigits = localeOptions?.options?.minimumFractionDigits ?? 0;\n const maxFracDigits = localeOptions?.options?.maximumFractionDigits ?? 20;\n return fractionalPartStr.padEnd(minFracDigits, '0').slice(0, maxFracDigits);\n}\n/**\n * Convert a scaled decimal value to a string, possibly using locale-specific formatting.\n */\nfunction stringFromDecimal(scaledValue, scale, localeOptions) {\n // Decimal values are represented as integers that have been scaled up by a power of ten. The `scale` property of\n // the type is the exponent of the scale factor. For a scale greater than zero, we need to separate out the\n // fractional part by reversing this scaling.\n if (scale > 0) {\n const scaleFactor = BigInt(10) ** BigInt(scale);\n const absScaledValue = scaledValue < 0 ? -scaledValue : scaledValue;\n const prefix = scaledValue < 0 ? '-' : '';\n const wholePartNum = absScaledValue / scaleFactor;\n const wholePartStr = formatWholePart(localeOptions, wholePartNum);\n const fractionalPartNum = absScaledValue % scaleFactor;\n const fractionalPartStr = formatFractionalPart(localeOptions, fractionalPartNum, scale);\n const decimalSeparatorStr = localeOptions\n ? getCachedDecimalSeparator(localeOptions.locales)\n : '.';\n return `${prefix}${wholePartStr}${decimalSeparatorStr}${fractionalPartStr}`;\n }\n // For a scale of zero, there is no fractional part, so a direct string conversion works.\n if (localeOptions) {\n return scaledValue.toLocaleString(localeOptions?.locales, localeOptions?.options);\n }\n return String(scaledValue);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBDecimalValue = void 0;\nexports.decimalValue = decimalValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst stringFromDecimal_1 = require(\"../conversion/stringFromDecimal\");\nclass DuckDBDecimalValue {\n /** Total number of decimal digits (including fractional digits) in represented number. */\n width;\n /** Number of fractional digits in represented number. */\n scale;\n /** Scaled-up value. Represented number is value/(10^scale). */\n value;\n /**\n * @param value Scaled-up value. Represented number is value/(10^scale).\n * @param width Total number of decimal digits (including fractional digits) in represented number.\n * @param scale Number of fractional digits in represented number.\n */\n constructor(value, width, scale) {\n this.width = width;\n this.scale = scale;\n this.value = value;\n }\n toString() {\n return (0, stringFromDecimal_1.stringFromDecimal)(this.value, this.scale);\n }\n toDouble() {\n return node_bindings_1.default.decimal_to_double(this);\n }\n static fromDouble(double, width, scale) {\n const decimal = node_bindings_1.default.double_to_decimal(double, width, scale);\n return new DuckDBDecimalValue(decimal.value, decimal.width, decimal.scale);\n }\n}\nexports.DuckDBDecimalValue = DuckDBDecimalValue;\nfunction decimalValue(value, width, scale) {\n if (typeof value === 'number') {\n return DuckDBDecimalValue.fromDouble(value, width, scale);\n }\n return new DuckDBDecimalValue(value, width, scale);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBIntervalValue = void 0;\nexports.intervalValue = intervalValue;\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBIntervalValue {\n months;\n days;\n micros;\n constructor(months, days, micros) {\n this.months = months;\n this.days = days;\n this.micros = micros;\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBIntervalString)(this.months, this.days, this.micros);\n }\n}\nexports.DuckDBIntervalValue = DuckDBIntervalValue;\nfunction intervalValue(months, days, micros) {\n return new DuckDBIntervalValue(months, days, micros);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBListValue = void 0;\nexports.listValue = listValue;\nconst displayStringForDuckDBValue_1 = require(\"../conversion/displayStringForDuckDBValue\");\nclass DuckDBListValue {\n items;\n constructor(items) {\n this.items = items;\n }\n toString() {\n return `[${this.items.map(displayStringForDuckDBValue_1.displayStringForDuckDBValue).join(', ')}]`;\n }\n}\nexports.DuckDBListValue = DuckDBListValue;\nfunction listValue(items) {\n return new DuckDBListValue(items);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBMapValue = void 0;\nexports.mapValue = mapValue;\nconst displayStringForDuckDBValue_1 = require(\"../conversion/displayStringForDuckDBValue\");\nclass DuckDBMapValue {\n entries;\n constructor(entries) {\n this.entries = entries;\n }\n toString() {\n return `{${this.entries.map(({ key, value }) => `${(0, displayStringForDuckDBValue_1.displayStringForDuckDBValue)(key)}: ${(0, displayStringForDuckDBValue_1.displayStringForDuckDBValue)(value)}`).join(', ')}}`;\n }\n}\nexports.DuckDBMapValue = DuckDBMapValue;\nfunction mapValue(entries) {\n return new DuckDBMapValue(entries);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBStructValue = void 0;\nexports.structValue = structValue;\nconst displayStringForDuckDBValue_1 = require(\"../conversion/displayStringForDuckDBValue\");\nclass DuckDBStructValue {\n entries;\n constructor(entries) {\n this.entries = entries;\n }\n toString() {\n const parts = [];\n for (const name in this.entries) {\n parts.push(`${(0, displayStringForDuckDBValue_1.displayStringForDuckDBValue)(name)}: ${(0, displayStringForDuckDBValue_1.displayStringForDuckDBValue)(this.entries[name])}`);\n }\n return `{${parts.join(', ')}}`;\n }\n}\nexports.DuckDBStructValue = DuckDBStructValue;\nfunction structValue(entries) {\n return new DuckDBStructValue(entries);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimeNSValue = void 0;\nexports.timeNSValue = timeNSValue;\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBTimeNSValue {\n nanos;\n constructor(nanos) {\n this.nanos = nanos;\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimeStringFromNanosecondsInDay)(this.nanos);\n }\n static Max = new DuckDBTimeNSValue(24n * 60n * 60n * 1000n * 1000n * 1000n);\n static Min = new DuckDBTimeNSValue(0n);\n}\nexports.DuckDBTimeNSValue = DuckDBTimeNSValue;\nfunction timeNSValue(nanos) {\n return new DuckDBTimeNSValue(nanos);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimestampSecondsValue = void 0;\nexports.timestampSecondsValue = timestampSecondsValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBTimestampSecondsValue {\n seconds;\n constructor(seconds) {\n this.seconds = seconds;\n }\n get isFinite() {\n return node_bindings_1.default.is_finite_timestamp_s(this);\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimestampStringFromSeconds)(this.seconds);\n }\n static Epoch = new DuckDBTimestampSecondsValue(0n);\n static Max = new DuckDBTimestampSecondsValue(9223372036854n);\n static Min = new DuckDBTimestampSecondsValue(-9223372022400n); // from test_all_types() select epoch(timestamp_s)::bigint;\n static PosInf = new DuckDBTimestampSecondsValue(2n ** 63n - 1n);\n static NegInf = new DuckDBTimestampSecondsValue(-(2n ** 63n - 1n));\n}\nexports.DuckDBTimestampSecondsValue = DuckDBTimestampSecondsValue;\nfunction timestampSecondsValue(seconds) {\n return new DuckDBTimestampSecondsValue(seconds);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimestampMillisecondsValue = void 0;\nexports.timestampMillisValue = timestampMillisValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nconst DuckDBTimestampSecondsValue_1 = require(\"./DuckDBTimestampSecondsValue\");\nclass DuckDBTimestampMillisecondsValue {\n millis;\n constructor(millis) {\n this.millis = millis;\n }\n get isFinite() {\n return node_bindings_1.default.is_finite_timestamp_ms(this);\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimestampStringFromMilliseconds)(this.millis);\n }\n static Epoch = new DuckDBTimestampMillisecondsValue(0n);\n static Max = new DuckDBTimestampMillisecondsValue((2n ** 63n - 2n) / 1000n);\n static Min = new DuckDBTimestampMillisecondsValue(DuckDBTimestampSecondsValue_1.DuckDBTimestampSecondsValue.Min.seconds * 1000n);\n static PosInf = new DuckDBTimestampMillisecondsValue(2n ** 63n - 1n);\n static NegInf = new DuckDBTimestampMillisecondsValue(-(2n ** 63n - 1n));\n}\nexports.DuckDBTimestampMillisecondsValue = DuckDBTimestampMillisecondsValue;\nfunction timestampMillisValue(millis) {\n return new DuckDBTimestampMillisecondsValue(millis);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimestampNanosecondsValue = void 0;\nexports.timestampNanosValue = timestampNanosValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBTimestampNanosecondsValue {\n nanos;\n constructor(nanos) {\n this.nanos = nanos;\n }\n get isFinite() {\n return node_bindings_1.default.is_finite_timestamp_ns(this);\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimestampStringFromNanoseconds)(this.nanos);\n }\n static Epoch = new DuckDBTimestampNanosecondsValue(0n);\n static Max = new DuckDBTimestampNanosecondsValue(2n ** 63n - 2n);\n static Min = new DuckDBTimestampNanosecondsValue(-9223286400000000000n);\n static PosInf = new DuckDBTimestampNanosecondsValue(2n ** 63n - 1n);\n static NegInf = new DuckDBTimestampNanosecondsValue(-(2n ** 63n - 1n));\n}\nexports.DuckDBTimestampNanosecondsValue = DuckDBTimestampNanosecondsValue;\nfunction timestampNanosValue(nanos) {\n return new DuckDBTimestampNanosecondsValue(nanos);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimestampMicrosecondsValue = exports.DuckDBTimestampValue = void 0;\nexports.timestampValue = timestampValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nconst DuckDBTimestampMillisecondsValue_1 = require(\"./DuckDBTimestampMillisecondsValue\");\nclass DuckDBTimestampValue {\n micros;\n constructor(micros) {\n this.micros = micros;\n }\n get isFinite() {\n return node_bindings_1.default.is_finite_timestamp(this);\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimestampStringFromMicroseconds)(this.micros);\n }\n toParts() {\n return node_bindings_1.default.from_timestamp(this);\n }\n static fromParts(parts) {\n return new DuckDBTimestampValue(node_bindings_1.default.to_timestamp(parts).micros);\n }\n static Epoch = new DuckDBTimestampValue(0n);\n static Max = new DuckDBTimestampValue(2n ** 63n - 2n);\n static Min = new DuckDBTimestampValue(DuckDBTimestampMillisecondsValue_1.DuckDBTimestampMillisecondsValue.Min.millis * 1000n);\n static PosInf = new DuckDBTimestampValue(2n ** 63n - 1n);\n static NegInf = new DuckDBTimestampValue(-(2n ** 63n - 1n));\n}\nexports.DuckDBTimestampValue = DuckDBTimestampValue;\nexports.DuckDBTimestampMicrosecondsValue = DuckDBTimestampValue;\nfunction timestampValue(microsOrParts) {\n if (typeof microsOrParts === 'bigint') {\n return new DuckDBTimestampValue(microsOrParts);\n }\n return DuckDBTimestampValue.fromParts(microsOrParts);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimestampTZValue = void 0;\nexports.timestampTZValue = timestampTZValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nconst DuckDBTimestampValue_1 = require(\"./DuckDBTimestampValue\");\nclass DuckDBTimestampTZValue {\n static timezoneOffsetInMinutes = -new Date().getTimezoneOffset();\n micros;\n constructor(micros) {\n this.micros = micros;\n }\n get isFinite() {\n return node_bindings_1.default.is_finite_timestamp(this);\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimestampStringFromMicroseconds)(this.micros, DuckDBTimestampTZValue.timezoneOffsetInMinutes);\n }\n toParts() {\n return node_bindings_1.default.from_timestamp(this);\n }\n static fromParts(parts) {\n return new DuckDBTimestampTZValue(node_bindings_1.default.to_timestamp(parts).micros);\n }\n static Epoch = new DuckDBTimestampTZValue(0n);\n static Max = new DuckDBTimestampTZValue(DuckDBTimestampValue_1.DuckDBTimestampValue.Max.micros);\n static Min = new DuckDBTimestampTZValue(DuckDBTimestampValue_1.DuckDBTimestampValue.Min.micros);\n static PosInf = new DuckDBTimestampTZValue(DuckDBTimestampValue_1.DuckDBTimestampValue.PosInf.micros);\n static NegInf = new DuckDBTimestampTZValue(DuckDBTimestampValue_1.DuckDBTimestampValue.NegInf.micros);\n}\nexports.DuckDBTimestampTZValue = DuckDBTimestampTZValue;\nfunction timestampTZValue(microsOrParts) {\n if (typeof microsOrParts === 'bigint') {\n return new DuckDBTimestampTZValue(microsOrParts);\n }\n return DuckDBTimestampTZValue.fromParts(microsOrParts);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimeTZValue = void 0;\nexports.timeTZValue = timeTZValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBTimeTZValue {\n /**\n * 40 bits for micros, then 24 bits for encoded offset in seconds.\n *\n * Max absolute unencoded offset = 15:59:59 = 60 * (60 * 15 + 59) + 59 = 57599.\n *\n * Encoded offset is unencoded offset inverted then shifted (by +57599) to unsigned.\n *\n * Max unencoded offset = 57599 -> -57599 -> 0 encoded.\n *\n * Min unencoded offset = -57599 -> 57599 -> 115198 encoded.\n */\n bits;\n /** Ranges from 0 to 86400000000 (= 24 * 60 * 60 * 1000 * 1000) */\n micros;\n /** In seconds, ranges from -57599 to 57599 (= 16 * 60 * 60 - 1) */\n offset;\n constructor(bits, micros, offset) {\n this.bits = bits;\n this.micros = micros;\n this.offset = offset;\n }\n toString() {\n return `${(0, dateTimeStringConversion_1.getDuckDBTimeStringFromMicrosecondsInDay)(this.micros)}${(0, dateTimeStringConversion_1.getOffsetStringFromSeconds)(this.offset)}`;\n }\n toParts() {\n return node_bindings_1.default.from_time_tz(this);\n }\n static TimeBits = 40;\n static OffsetBits = 24;\n static MaxOffset = 16 * 60 * 60 - 1; // ±15:59:59 = 57599 seconds\n static MinOffset = -DuckDBTimeTZValue.MaxOffset;\n static MaxMicros = 24n * 60n * 60n * 1000n * 1000n; // 86400000000\n static MinMicros = 0n;\n static fromBits(bits) {\n const micros = BigInt.asUintN(DuckDBTimeTZValue.TimeBits, bits >> BigInt(DuckDBTimeTZValue.OffsetBits));\n const offset = DuckDBTimeTZValue.MaxOffset -\n Number(BigInt.asUintN(DuckDBTimeTZValue.OffsetBits, bits));\n return new DuckDBTimeTZValue(bits, micros, offset);\n }\n static fromMicrosAndOffset(micros, offset) {\n const bits = (BigInt.asUintN(DuckDBTimeTZValue.TimeBits, micros) <<\n BigInt(DuckDBTimeTZValue.OffsetBits)) |\n BigInt.asUintN(DuckDBTimeTZValue.OffsetBits, BigInt(DuckDBTimeTZValue.MaxOffset - offset));\n return new DuckDBTimeTZValue(bits, micros, offset);\n }\n static fromParts(parts) {\n return DuckDBTimeTZValue.fromMicrosAndOffset(node_bindings_1.default.to_time(parts.time).micros, parts.offset);\n }\n static Max = DuckDBTimeTZValue.fromMicrosAndOffset(DuckDBTimeTZValue.MaxMicros, DuckDBTimeTZValue.MinOffset);\n static Min = DuckDBTimeTZValue.fromMicrosAndOffset(DuckDBTimeTZValue.MinMicros, DuckDBTimeTZValue.MaxOffset);\n}\nexports.DuckDBTimeTZValue = DuckDBTimeTZValue;\nfunction timeTZValue(micros, offset) {\n return DuckDBTimeTZValue.fromMicrosAndOffset(micros, offset);\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimeValue = void 0;\nexports.timeValue = timeValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst dateTimeStringConversion_1 = require(\"../conversion/dateTimeStringConversion\");\nclass DuckDBTimeValue {\n micros;\n constructor(micros) {\n this.micros = micros;\n }\n toString() {\n return (0, dateTimeStringConversion_1.getDuckDBTimeStringFromMicrosecondsInDay)(this.micros);\n }\n toParts() {\n return node_bindings_1.default.from_time(this);\n }\n static fromParts(parts) {\n return new DuckDBTimeValue(node_bindings_1.default.to_time(parts).micros);\n }\n static Max = new DuckDBTimeValue(24n * 60n * 60n * 1000n * 1000n);\n static Min = new DuckDBTimeValue(0n);\n}\nexports.DuckDBTimeValue = DuckDBTimeValue;\nfunction timeValue(microsOrParts) {\n if (typeof microsOrParts === 'bigint') {\n return new DuckDBTimeValue(microsOrParts);\n }\n return DuckDBTimeValue.fromParts(microsOrParts);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBUnionValue = void 0;\nexports.unionValue = unionValue;\nclass DuckDBUnionValue {\n tag;\n value;\n constructor(tag, value) {\n this.tag = tag;\n this.value = value;\n }\n toString() {\n if (this.value == null) {\n return 'NULL';\n }\n return this.value.toString();\n }\n}\nexports.DuckDBUnionValue = DuckDBUnionValue;\nfunction unionValue(tag, value) {\n return new DuckDBUnionValue(tag, value);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBUUIDValue = void 0;\nexports.uuidValue = uuidValue;\nclass DuckDBUUIDValue {\n hugeint;\n constructor(hugeint) {\n this.hugeint = hugeint;\n }\n /** Return the UUID as an unsigned 128-bit integer in a JS BigInt. */\n toUint128() {\n // UUID values are stored with their MSB flipped so their numeric ordering matches their string ordering.\n return (this.hugeint ^ 0x80000000000000000000000000000000n) & 0xffffffffffffffffffffffffffffffffn;\n }\n toString() {\n // Prepend with a (hex) 1 before converting to a hex string.\n // This ensures the trailing 32 characters are the hex digits we want, left padded with zeros as needed.\n const hex = (this.toUint128() | 0x100000000000000000000000000000000n).toString(16);\n return `${hex.substring(1, 9)}-${hex.substring(9, 13)}-${hex.substring(13, 17)}-${hex.substring(17, 21)}-${hex.substring(21, 33)}`;\n }\n /** Create a DuckDBUUIDValue from an unsigned 128-bit integer in a JS BigInt. */\n static fromUint128(uint128) {\n return new DuckDBUUIDValue((uint128 ^ 0x80000000000000000000000000000000n) & 0xffffffffffffffffffffffffffffffffn);\n }\n /**\n * Create a DuckDBUUIDValue from a HUGEINT as stored by DuckDB.\n *\n * UUID values are stored with their MSB flipped so their numeric ordering matches their string ordering.\n */\n static fromStoredHugeInt(hugeint) {\n return new DuckDBUUIDValue(hugeint);\n }\n static Max = new DuckDBUUIDValue(2n ** 127n - 1n); // 7fffffffffffffffffffffffffffffff\n static Min = new DuckDBUUIDValue(-(2n ** 127n)); // 80000000000000000000000000000000\n}\nexports.DuckDBUUIDValue = DuckDBUUIDValue;\n/** Create a DuckDBUUIDValue from an unsigned 128-bit integer in a JS BigInt. */\nfunction uuidValue(uint128) {\n return DuckDBUUIDValue.fromUint128(uint128);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./DuckDBArrayValue\"), exports);\n__exportStar(require(\"./DuckDBBitValue\"), exports);\n__exportStar(require(\"./DuckDBBlobValue\"), exports);\n__exportStar(require(\"./DuckDBDateValue\"), exports);\n__exportStar(require(\"./DuckDBDecimalValue\"), exports);\n__exportStar(require(\"./DuckDBIntervalValue\"), exports);\n__exportStar(require(\"./DuckDBListValue\"), exports);\n__exportStar(require(\"./DuckDBMapValue\"), exports);\n__exportStar(require(\"./DuckDBStructValue\"), exports);\n__exportStar(require(\"./DuckDBTimeNSValue\"), exports);\n__exportStar(require(\"./DuckDBTimestampMillisecondsValue\"), exports);\n__exportStar(require(\"./DuckDBTimestampNanosecondsValue\"), exports);\n__exportStar(require(\"./DuckDBTimestampSecondsValue\"), exports);\n__exportStar(require(\"./DuckDBTimestampTZValue\"), exports);\n__exportStar(require(\"./DuckDBTimestampValue\"), exports);\n__exportStar(require(\"./DuckDBTimeTZValue\"), exports);\n__exportStar(require(\"./DuckDBTimeValue\"), exports);\n__exportStar(require(\"./DuckDBUnionValue\"), exports);\n__exportStar(require(\"./DuckDBUUIDValue\"), exports);\n__exportStar(require(\"./DuckDBValue\"), exports);\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createValue = createValue;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBTypeId_1 = require(\"./DuckDBTypeId\");\nconst values_1 = require(\"./values\");\nfunction createValue(type, input) {\n if (input === null) {\n return node_bindings_1.default.create_null_value();\n }\n const { typeId } = type;\n switch (typeId) {\n case DuckDBTypeId_1.DuckDBTypeId.BOOLEAN:\n if (typeof input === 'boolean') {\n return node_bindings_1.default.create_bool(input);\n }\n throw new Error(`input is not a boolean`);\n case DuckDBTypeId_1.DuckDBTypeId.TINYINT:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_int8(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.SMALLINT:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_int16(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.INTEGER:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_int32(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.BIGINT:\n if (typeof input === 'bigint') {\n return node_bindings_1.default.create_int64(input);\n }\n throw new Error(`input is not a bigint`);\n case DuckDBTypeId_1.DuckDBTypeId.UTINYINT:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_uint8(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.USMALLINT:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_uint16(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.UINTEGER:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_uint32(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.UBIGINT:\n if (typeof input === 'bigint') {\n return node_bindings_1.default.create_uint64(input);\n }\n throw new Error(`input is not a bigint`);\n case DuckDBTypeId_1.DuckDBTypeId.FLOAT:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_float(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.DOUBLE:\n if (typeof input === 'number') {\n return node_bindings_1.default.create_double(input);\n }\n throw new Error(`input is not a number`);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP:\n if (input instanceof values_1.DuckDBTimestampValue) {\n return node_bindings_1.default.create_timestamp(input);\n }\n throw new Error(`input is not a DuckDBTimestampValue`);\n case DuckDBTypeId_1.DuckDBTypeId.DATE:\n if (input instanceof values_1.DuckDBDateValue) {\n return node_bindings_1.default.create_date(input);\n }\n throw new Error(`input is not a DuckDBDateValue`);\n case DuckDBTypeId_1.DuckDBTypeId.TIME:\n if (input instanceof values_1.DuckDBTimeValue) {\n return node_bindings_1.default.create_time(input);\n }\n throw new Error(`input is not a DuckDBTimeValue`);\n case DuckDBTypeId_1.DuckDBTypeId.INTERVAL:\n if (input instanceof values_1.DuckDBIntervalValue) {\n return node_bindings_1.default.create_interval(input);\n }\n throw new Error(`input is not a DuckDBIntervalValue`);\n case DuckDBTypeId_1.DuckDBTypeId.HUGEINT:\n if (typeof input === 'bigint') {\n return node_bindings_1.default.create_hugeint(input);\n }\n throw new Error(`input is not a bigint`);\n case DuckDBTypeId_1.DuckDBTypeId.UHUGEINT:\n if (typeof input === 'bigint') {\n return node_bindings_1.default.create_uhugeint(input);\n }\n throw new Error(`input is not a bigint`);\n case DuckDBTypeId_1.DuckDBTypeId.VARCHAR:\n if (typeof input === 'string') {\n return node_bindings_1.default.create_varchar(input);\n }\n throw new Error(`input is not a string`);\n case DuckDBTypeId_1.DuckDBTypeId.BLOB:\n if (input instanceof values_1.DuckDBBlobValue) {\n return node_bindings_1.default.create_blob(input.bytes);\n }\n throw new Error(`input is not a DuckDBBlobValue`);\n case DuckDBTypeId_1.DuckDBTypeId.DECIMAL:\n if (input instanceof values_1.DuckDBDecimalValue) {\n return node_bindings_1.default.create_decimal(input);\n }\n throw new Error(`input is not a DuckDBDecimalValue`);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_S:\n if (input instanceof values_1.DuckDBTimestampSecondsValue) {\n return node_bindings_1.default.create_timestamp_s(input);\n }\n throw new Error(`input is not a DuckDBTimestampSecondsValue`);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_MS:\n if (input instanceof values_1.DuckDBTimestampMillisecondsValue) {\n return node_bindings_1.default.create_timestamp_ms(input);\n }\n throw new Error(`input is not a DuckDBTimestampMillisecondsValue`);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_NS:\n if (input instanceof values_1.DuckDBTimestampNanosecondsValue) {\n return node_bindings_1.default.create_timestamp_ns(input);\n }\n throw new Error(`input is not a DuckDBTimestampNanosecondsValue`);\n case DuckDBTypeId_1.DuckDBTypeId.ENUM:\n if (typeof input === 'string') {\n return node_bindings_1.default.create_enum_value(type.toLogicalType().logical_type, type.indexForValue(input));\n }\n throw new Error(`input is not a string`);\n case DuckDBTypeId_1.DuckDBTypeId.LIST:\n if (input instanceof values_1.DuckDBListValue) {\n if (type.valueType.typeId === DuckDBTypeId_1.DuckDBTypeId.ANY) {\n throw new Error('Cannot create lists with item type of ANY. Specify a specific type.');\n }\n return node_bindings_1.default.create_list_value(type.valueType.toLogicalType().logical_type, input.items.map((item) => createValue(type.valueType, item)));\n }\n throw new Error(`input is not a DuckDBListValue`);\n case DuckDBTypeId_1.DuckDBTypeId.STRUCT:\n if (input instanceof values_1.DuckDBStructValue) {\n if (type.entryTypes.find((entryType) => entryType.typeId === DuckDBTypeId_1.DuckDBTypeId.ANY)) {\n throw new Error('Cannot create structs with an entry type of ANY. Specify a specific type.');\n }\n return node_bindings_1.default.create_struct_value(type.toLogicalType().logical_type, Object.values(input.entries).map((value, i) => createValue(type.entryTypes[i], value)));\n }\n throw new Error(`input is not a DuckDBStructValue`);\n case DuckDBTypeId_1.DuckDBTypeId.MAP:\n if (input instanceof values_1.DuckDBMapValue) {\n if (type.keyType.typeId === DuckDBTypeId_1.DuckDBTypeId.ANY) {\n throw new Error('Cannot create maps with key type of ANY. Specify a specific type.');\n }\n if (type.valueType.typeId === DuckDBTypeId_1.DuckDBTypeId.ANY) {\n throw new Error('Cannot create maps with value type of ANY. Specify a specific type.');\n }\n return node_bindings_1.default.create_map_value(type.toLogicalType().logical_type, input.entries.map((entry) => createValue(type.keyType, entry.key)), input.entries.map((entry) => createValue(type.valueType, entry.value)));\n }\n throw new Error(`input is not a DuckDBMapValue`);\n case DuckDBTypeId_1.DuckDBTypeId.ARRAY:\n if (input instanceof values_1.DuckDBArrayValue) {\n if (type.valueType.typeId === DuckDBTypeId_1.DuckDBTypeId.ANY) {\n throw new Error('Cannot create arrays with item type of ANY. Specify a specific type.');\n }\n return node_bindings_1.default.create_array_value(type.valueType.toLogicalType().logical_type, input.items.map((item) => createValue(type.valueType, item)));\n }\n throw new Error(`input is not a DuckDBArrayValue`);\n case DuckDBTypeId_1.DuckDBTypeId.UUID:\n if (input instanceof values_1.DuckDBUUIDValue) {\n return node_bindings_1.default.create_uuid(input.toUint128());\n }\n throw new Error(`input is not a bigint`);\n case DuckDBTypeId_1.DuckDBTypeId.UNION:\n if (input instanceof values_1.DuckDBUnionValue) {\n const tagIndex = type.memberIndexForTag(input.tag);\n const memberType = type.memberTypes[tagIndex];\n if (memberType.typeId === DuckDBTypeId_1.DuckDBTypeId.ANY) {\n throw new Error('Cannot create union values with type of ANY.');\n }\n return node_bindings_1.default.create_union_value(type.toLogicalType().logical_type, tagIndex, createValue(memberType, input.value));\n }\n throw new Error(`input is not a DuckDBUnionValue`);\n case DuckDBTypeId_1.DuckDBTypeId.BIT:\n if (input instanceof values_1.DuckDBBitValue) {\n return node_bindings_1.default.create_bit(input.data);\n }\n throw new Error(`input is not a DuckDBBitValue`);\n case DuckDBTypeId_1.DuckDBTypeId.TIME_TZ:\n if (input instanceof values_1.DuckDBTimeTZValue) {\n return node_bindings_1.default.create_time_tz_value(input);\n }\n throw new Error(`input is not a DuckDBTimeTZValue`);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_TZ:\n if (input instanceof values_1.DuckDBTimestampTZValue) {\n return node_bindings_1.default.create_timestamp_tz(input);\n }\n throw new Error(`input is not a DuckDBTimestampTZValue`);\n case DuckDBTypeId_1.DuckDBTypeId.ANY:\n throw new Error(`Cannot create values of type ANY. Specify a specific type.`);\n case DuckDBTypeId_1.DuckDBTypeId.BIGNUM:\n if (typeof input === 'bigint') {\n return node_bindings_1.default.create_bignum(input);\n }\n throw new Error(`input is not a bigint`);\n case DuckDBTypeId_1.DuckDBTypeId.SQLNULL:\n return node_bindings_1.default.create_null_value();\n case DuckDBTypeId_1.DuckDBTypeId.STRING_LITERAL:\n throw new Error(`Cannot create values of type STRING_LITERAL.`);\n case DuckDBTypeId_1.DuckDBTypeId.INTEGER_LITERAL:\n throw new Error(`Cannot create values of type INTEGER_LITERAL.`);\n case DuckDBTypeId_1.DuckDBTypeId.TIME_NS:\n if (input instanceof values_1.DuckDBTimeNSValue) {\n return node_bindings_1.default.create_time_ns(input);\n }\n throw new Error(`input is not a DuckDBTimeNSValue`);\n default:\n throw new Error(`unrecognized type id ${typeId}`);\n }\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBStructType = exports.DuckDBListType = exports.DuckDBEnumType = exports.TIMESTAMP_NS = exports.DuckDBTimestampNanosecondsType = exports.TIMESTAMP_MS = exports.DuckDBTimestampMillisecondsType = exports.TIMESTAMP_S = exports.DuckDBTimestampSecondsType = exports.DuckDBDecimalType = exports.BLOB = exports.DuckDBBlobType = exports.VARCHAR = exports.DuckDBVarCharType = exports.UHUGEINT = exports.DuckDBUHugeIntType = exports.HUGEINT = exports.DuckDBHugeIntType = exports.INTERVAL = exports.DuckDBIntervalType = exports.TIME = exports.DuckDBTimeType = exports.DATE = exports.DuckDBDateType = exports.DuckDBTimestampMicrosecondsType = exports.TIMESTAMP = exports.DuckDBTimestampType = exports.DOUBLE = exports.DuckDBDoubleType = exports.FLOAT = exports.DuckDBFloatType = exports.UBIGINT = exports.DuckDBUBigIntType = exports.UINTEGER = exports.DuckDBUIntegerType = exports.USMALLINT = exports.DuckDBUSmallIntType = exports.UTINYINT = exports.DuckDBUTinyIntType = exports.BIGINT = exports.DuckDBBigIntType = exports.INTEGER = exports.DuckDBIntegerType = exports.SMALLINT = exports.DuckDBSmallIntType = exports.TINYINT = exports.DuckDBTinyIntType = exports.BOOLEAN = exports.DuckDBBooleanType = exports.BaseDuckDBType = void 0;\nexports.TIME_NS = exports.DuckDBTimeNSType = exports.INTEGER_LITERAL = exports.DuckDBIntegerLiteralType = exports.STRING_LITERAL = exports.DuckDBStringLiteralType = exports.SQLNULL = exports.DuckDBSQLNullType = exports.BIGNUM = exports.DuckDBBigNumType = exports.ANY = exports.DuckDBAnyType = exports.TIMESTAMPTZ = exports.DuckDBTimestampTZType = exports.TIMETZ = exports.DuckDBTimeTZType = exports.BIT = exports.DuckDBBitType = exports.DuckDBUnionType = exports.UUID = exports.DuckDBUUIDType = exports.DuckDBArrayType = exports.DuckDBMapType = void 0;\nexports.DECIMAL = DECIMAL;\nexports.ENUM8 = ENUM8;\nexports.ENUM16 = ENUM16;\nexports.ENUM32 = ENUM32;\nexports.ENUM = ENUM;\nexports.LIST = LIST;\nexports.STRUCT = STRUCT;\nexports.MAP = MAP;\nexports.ARRAY = ARRAY;\nexports.UNION = UNION;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBLogicalType_1 = require(\"./DuckDBLogicalType\");\nconst DuckDBTypeId_1 = require(\"./DuckDBTypeId\");\nconst sql_1 = require(\"./sql\");\nconst values_1 = require(\"./values\");\nclass BaseDuckDBType {\n typeId;\n alias;\n constructor(typeId, alias) {\n this.typeId = typeId;\n this.alias = alias;\n }\n toString() {\n return DuckDBTypeId_1.DuckDBTypeId[this.typeId];\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.create_logical_type(this.typeId));\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.BaseDuckDBType = BaseDuckDBType;\nclass DuckDBBooleanType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.BOOLEAN, alias);\n }\n static instance = new DuckDBBooleanType();\n static create(alias) {\n return alias ? new DuckDBBooleanType(alias) : DuckDBBooleanType.instance;\n }\n}\nexports.DuckDBBooleanType = DuckDBBooleanType;\nexports.BOOLEAN = DuckDBBooleanType.instance;\nclass DuckDBTinyIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TINYINT, alias);\n }\n static instance = new DuckDBTinyIntType();\n static create(alias) {\n return alias ? new DuckDBTinyIntType(alias) : DuckDBTinyIntType.instance;\n }\n static Max = 2 ** 7 - 1;\n static Min = -(2 ** 7);\n get max() {\n return DuckDBTinyIntType.Max;\n }\n get min() {\n return DuckDBTinyIntType.Min;\n }\n}\nexports.DuckDBTinyIntType = DuckDBTinyIntType;\nexports.TINYINT = DuckDBTinyIntType.instance;\nclass DuckDBSmallIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.SMALLINT, alias);\n }\n static instance = new DuckDBSmallIntType();\n static create(alias) {\n return alias ? new DuckDBSmallIntType(alias) : DuckDBSmallIntType.instance;\n }\n static Max = 2 ** 15 - 1;\n static Min = -(2 ** 15);\n get max() {\n return DuckDBSmallIntType.Max;\n }\n get min() {\n return DuckDBSmallIntType.Min;\n }\n}\nexports.DuckDBSmallIntType = DuckDBSmallIntType;\nexports.SMALLINT = DuckDBSmallIntType.instance;\nclass DuckDBIntegerType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.INTEGER, alias);\n }\n static instance = new DuckDBIntegerType();\n static create(alias) {\n return alias ? new DuckDBIntegerType(alias) : DuckDBIntegerType.instance;\n }\n static Max = 2 ** 31 - 1;\n static Min = -(2 ** 31);\n get max() {\n return DuckDBIntegerType.Max;\n }\n get min() {\n return DuckDBIntegerType.Min;\n }\n}\nexports.DuckDBIntegerType = DuckDBIntegerType;\nexports.INTEGER = DuckDBIntegerType.instance;\nclass DuckDBBigIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.BIGINT, alias);\n }\n static instance = new DuckDBBigIntType();\n static create(alias) {\n return alias ? new DuckDBBigIntType(alias) : DuckDBBigIntType.instance;\n }\n static Max = 2n ** 63n - 1n;\n static Min = -(2n ** 63n);\n get max() {\n return DuckDBBigIntType.Max;\n }\n get min() {\n return DuckDBBigIntType.Min;\n }\n}\nexports.DuckDBBigIntType = DuckDBBigIntType;\nexports.BIGINT = DuckDBBigIntType.instance;\nclass DuckDBUTinyIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.UTINYINT, alias);\n }\n static instance = new DuckDBUTinyIntType();\n static create(alias) {\n return alias ? new DuckDBUTinyIntType(alias) : DuckDBUTinyIntType.instance;\n }\n static Max = 2 ** 8 - 1;\n static Min = 0;\n get max() {\n return DuckDBUTinyIntType.Max;\n }\n get min() {\n return DuckDBUTinyIntType.Min;\n }\n}\nexports.DuckDBUTinyIntType = DuckDBUTinyIntType;\nexports.UTINYINT = DuckDBUTinyIntType.instance;\nclass DuckDBUSmallIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.USMALLINT, alias);\n }\n static instance = new DuckDBUSmallIntType();\n static create(alias) {\n return alias\n ? new DuckDBUSmallIntType(alias)\n : DuckDBUSmallIntType.instance;\n }\n static Max = 2 ** 16 - 1;\n static Min = 0;\n get max() {\n return DuckDBUSmallIntType.Max;\n }\n get min() {\n return DuckDBUSmallIntType.Min;\n }\n}\nexports.DuckDBUSmallIntType = DuckDBUSmallIntType;\nexports.USMALLINT = DuckDBUSmallIntType.instance;\nclass DuckDBUIntegerType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.UINTEGER, alias);\n }\n static instance = new DuckDBUIntegerType();\n static create(alias) {\n return alias ? new DuckDBUIntegerType(alias) : DuckDBUIntegerType.instance;\n }\n static Max = 2 ** 32 - 1;\n static Min = 0;\n get max() {\n return DuckDBUIntegerType.Max;\n }\n get min() {\n return DuckDBUIntegerType.Min;\n }\n}\nexports.DuckDBUIntegerType = DuckDBUIntegerType;\nexports.UINTEGER = DuckDBUIntegerType.instance;\nclass DuckDBUBigIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.UBIGINT, alias);\n }\n static instance = new DuckDBUBigIntType();\n static create(alias) {\n return alias ? new DuckDBUBigIntType(alias) : DuckDBUBigIntType.instance;\n }\n static Max = 2n ** 64n - 1n;\n static Min = 0n;\n get max() {\n return DuckDBUBigIntType.Max;\n }\n get min() {\n return DuckDBUBigIntType.Min;\n }\n}\nexports.DuckDBUBigIntType = DuckDBUBigIntType;\nexports.UBIGINT = DuckDBUBigIntType.instance;\nclass DuckDBFloatType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.FLOAT, alias);\n }\n static instance = new DuckDBFloatType();\n static create(alias) {\n return alias ? new DuckDBFloatType(alias) : DuckDBFloatType.instance;\n }\n static Max = Math.fround(3.4028235e38);\n static Min = Math.fround(-3.4028235e38);\n get max() {\n return DuckDBFloatType.Max;\n }\n get min() {\n return DuckDBFloatType.Min;\n }\n}\nexports.DuckDBFloatType = DuckDBFloatType;\nexports.FLOAT = DuckDBFloatType.instance;\nclass DuckDBDoubleType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.DOUBLE, alias);\n }\n static instance = new DuckDBDoubleType();\n static create(alias) {\n return alias ? new DuckDBDoubleType(alias) : DuckDBDoubleType.instance;\n }\n static Max = Number.MAX_VALUE;\n static Min = -Number.MAX_VALUE;\n get max() {\n return DuckDBDoubleType.Max;\n }\n get min() {\n return DuckDBDoubleType.Min;\n }\n}\nexports.DuckDBDoubleType = DuckDBDoubleType;\nexports.DOUBLE = DuckDBDoubleType.instance;\nclass DuckDBTimestampType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP, alias);\n }\n static instance = new DuckDBTimestampType();\n static create(alias) {\n return alias\n ? new DuckDBTimestampType(alias)\n : DuckDBTimestampType.instance;\n }\n get epoch() {\n return values_1.DuckDBTimestampValue.Epoch;\n }\n get max() {\n return values_1.DuckDBTimestampValue.Max;\n }\n get min() {\n return values_1.DuckDBTimestampValue.Min;\n }\n get posInf() {\n return values_1.DuckDBTimestampValue.PosInf;\n }\n get negInf() {\n return values_1.DuckDBTimestampValue.NegInf;\n }\n}\nexports.DuckDBTimestampType = DuckDBTimestampType;\nexports.TIMESTAMP = DuckDBTimestampType.instance;\nexports.DuckDBTimestampMicrosecondsType = DuckDBTimestampType;\nclass DuckDBDateType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.DATE, alias);\n }\n static instance = new DuckDBDateType();\n static create(alias) {\n return alias ? new DuckDBDateType(alias) : DuckDBDateType.instance;\n }\n get epoch() {\n return values_1.DuckDBDateValue.Epoch;\n }\n get max() {\n return values_1.DuckDBDateValue.Max;\n }\n get min() {\n return values_1.DuckDBDateValue.Min;\n }\n get posInf() {\n return values_1.DuckDBDateValue.PosInf;\n }\n get negInf() {\n return values_1.DuckDBDateValue.NegInf;\n }\n}\nexports.DuckDBDateType = DuckDBDateType;\nexports.DATE = DuckDBDateType.instance;\nclass DuckDBTimeType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIME, alias);\n }\n static instance = new DuckDBTimeType();\n static create(alias) {\n return alias ? new DuckDBTimeType(alias) : DuckDBTimeType.instance;\n }\n get max() {\n return values_1.DuckDBTimeValue.Max;\n }\n get min() {\n return values_1.DuckDBTimeValue.Min;\n }\n}\nexports.DuckDBTimeType = DuckDBTimeType;\nexports.TIME = DuckDBTimeType.instance;\nclass DuckDBIntervalType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.INTERVAL, alias);\n }\n static instance = new DuckDBIntervalType();\n static create(alias) {\n return alias ? new DuckDBIntervalType(alias) : DuckDBIntervalType.instance;\n }\n}\nexports.DuckDBIntervalType = DuckDBIntervalType;\nexports.INTERVAL = DuckDBIntervalType.instance;\nclass DuckDBHugeIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.HUGEINT, alias);\n }\n static instance = new DuckDBHugeIntType();\n static create(alias) {\n return alias ? new DuckDBHugeIntType(alias) : DuckDBHugeIntType.instance;\n }\n static Max = 2n ** 127n - 1n;\n static Min = -(2n ** 127n);\n get max() {\n return DuckDBHugeIntType.Max;\n }\n get min() {\n return DuckDBHugeIntType.Min;\n }\n}\nexports.DuckDBHugeIntType = DuckDBHugeIntType;\nexports.HUGEINT = DuckDBHugeIntType.instance;\nclass DuckDBUHugeIntType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.UHUGEINT, alias);\n }\n static instance = new DuckDBUHugeIntType();\n static create(alias) {\n return alias ? new DuckDBUHugeIntType(alias) : DuckDBUHugeIntType.instance;\n }\n static Max = 2n ** 128n - 1n;\n static Min = 0n;\n get max() {\n return DuckDBUHugeIntType.Max;\n }\n get min() {\n return DuckDBUHugeIntType.Min;\n }\n}\nexports.DuckDBUHugeIntType = DuckDBUHugeIntType;\nexports.UHUGEINT = DuckDBUHugeIntType.instance;\nclass DuckDBVarCharType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.VARCHAR, alias);\n }\n static instance = new DuckDBVarCharType();\n static create(alias) {\n return alias ? new DuckDBVarCharType(alias) : DuckDBVarCharType.instance;\n }\n}\nexports.DuckDBVarCharType = DuckDBVarCharType;\nexports.VARCHAR = DuckDBVarCharType.instance;\nclass DuckDBBlobType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.BLOB, alias);\n }\n static instance = new DuckDBBlobType();\n static create(alias) {\n return alias ? new DuckDBBlobType(alias) : DuckDBBlobType.instance;\n }\n}\nexports.DuckDBBlobType = DuckDBBlobType;\nexports.BLOB = DuckDBBlobType.instance;\nclass DuckDBDecimalType extends BaseDuckDBType {\n width;\n scale;\n constructor(width, scale, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.DECIMAL, alias);\n this.width = width;\n this.scale = scale;\n }\n toString() {\n return `DECIMAL(${this.width},${this.scale})`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createDecimal(this.width, this.scale);\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n width: this.width,\n scale: this.scale,\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n static default = new DuckDBDecimalType(18, 3);\n}\nexports.DuckDBDecimalType = DuckDBDecimalType;\nfunction DECIMAL(width, scale, alias) {\n if (width === undefined) {\n return DuckDBDecimalType.default;\n }\n if (scale === undefined) {\n return new DuckDBDecimalType(width, 0);\n }\n return new DuckDBDecimalType(width, scale, alias);\n}\nclass DuckDBTimestampSecondsType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_S, alias);\n }\n static instance = new DuckDBTimestampSecondsType();\n static create(alias) {\n return alias\n ? new DuckDBTimestampSecondsType(alias)\n : DuckDBTimestampSecondsType.instance;\n }\n get epoch() {\n return values_1.DuckDBTimestampSecondsValue.Epoch;\n }\n get max() {\n return values_1.DuckDBTimestampSecondsValue.Max;\n }\n get min() {\n return values_1.DuckDBTimestampSecondsValue.Min;\n }\n get posInf() {\n return values_1.DuckDBTimestampSecondsValue.PosInf;\n }\n get negInf() {\n return values_1.DuckDBTimestampSecondsValue.NegInf;\n }\n}\nexports.DuckDBTimestampSecondsType = DuckDBTimestampSecondsType;\nexports.TIMESTAMP_S = DuckDBTimestampSecondsType.instance;\nclass DuckDBTimestampMillisecondsType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_MS, alias);\n }\n static instance = new DuckDBTimestampMillisecondsType();\n static create(alias) {\n return alias\n ? new DuckDBTimestampMillisecondsType(alias)\n : DuckDBTimestampMillisecondsType.instance;\n }\n get epoch() {\n return values_1.DuckDBTimestampMillisecondsValue.Epoch;\n }\n get max() {\n return values_1.DuckDBTimestampMillisecondsValue.Max;\n }\n get min() {\n return values_1.DuckDBTimestampMillisecondsValue.Min;\n }\n get posInf() {\n return values_1.DuckDBTimestampMillisecondsValue.PosInf;\n }\n get negInf() {\n return values_1.DuckDBTimestampMillisecondsValue.NegInf;\n }\n}\nexports.DuckDBTimestampMillisecondsType = DuckDBTimestampMillisecondsType;\nexports.TIMESTAMP_MS = DuckDBTimestampMillisecondsType.instance;\nclass DuckDBTimestampNanosecondsType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_NS, alias);\n }\n static instance = new DuckDBTimestampNanosecondsType();\n static create(alias) {\n return alias\n ? new DuckDBTimestampNanosecondsType(alias)\n : DuckDBTimestampNanosecondsType.instance;\n }\n get epoch() {\n return values_1.DuckDBTimestampNanosecondsValue.Epoch;\n }\n get max() {\n return values_1.DuckDBTimestampNanosecondsValue.Max;\n }\n get min() {\n return values_1.DuckDBTimestampNanosecondsValue.Min;\n }\n get posInf() {\n return values_1.DuckDBTimestampNanosecondsValue.PosInf;\n }\n get negInf() {\n return values_1.DuckDBTimestampNanosecondsValue.NegInf;\n }\n}\nexports.DuckDBTimestampNanosecondsType = DuckDBTimestampNanosecondsType;\nexports.TIMESTAMP_NS = DuckDBTimestampNanosecondsType.instance;\nclass DuckDBEnumType extends BaseDuckDBType {\n values;\n valueIndexes;\n internalTypeId;\n constructor(values, internalTypeId, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.ENUM, alias);\n this.values = values;\n const valueIndexes = {};\n for (let i = 0; i < values.length; i++) {\n valueIndexes[values[i]] = i;\n }\n this.valueIndexes = valueIndexes;\n this.internalTypeId = internalTypeId;\n }\n indexForValue(value) {\n return this.valueIndexes[value];\n }\n toString() {\n return `ENUM(${this.values.map(sql_1.quotedString).join(', ')})`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createEnum(this.values);\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n values: [...this.values],\n internalTypeId: this.internalTypeId,\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.DuckDBEnumType = DuckDBEnumType;\nfunction ENUM8(values, alias) {\n return new DuckDBEnumType(values, DuckDBTypeId_1.DuckDBTypeId.UTINYINT, alias);\n}\nfunction ENUM16(values, alias) {\n return new DuckDBEnumType(values, DuckDBTypeId_1.DuckDBTypeId.USMALLINT, alias);\n}\nfunction ENUM32(values, alias) {\n return new DuckDBEnumType(values, DuckDBTypeId_1.DuckDBTypeId.UINTEGER, alias);\n}\nfunction ENUM(values, alias) {\n if (values.length < 256) {\n return ENUM8(values, alias);\n }\n else if (values.length < 65536) {\n return ENUM16(values, alias);\n }\n else if (values.length < 4294967296) {\n return ENUM32(values, alias);\n }\n else {\n throw new Error(`ENUM types cannot have more than 4294967295 values; received ${values.length}`);\n }\n}\nclass DuckDBListType extends BaseDuckDBType {\n valueType;\n constructor(valueType, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.LIST, alias);\n this.valueType = valueType;\n }\n toString() {\n return `${this.valueType}[]`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createList(this.valueType.toLogicalType());\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n valueType: this.valueType.toJson(),\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.DuckDBListType = DuckDBListType;\nfunction LIST(valueType, alias) {\n return new DuckDBListType(valueType, alias);\n}\nclass DuckDBStructType extends BaseDuckDBType {\n entryNames;\n entryTypes;\n entryIndexes;\n constructor(entryNames, entryTypes, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.STRUCT, alias);\n if (entryNames.length !== entryTypes.length) {\n throw new Error(`Could not create DuckDBStructType: \\\n entryNames length (${entryNames.length}) does not match entryTypes length (${entryTypes.length})`);\n }\n this.entryNames = entryNames;\n this.entryTypes = entryTypes;\n const entryIndexes = {};\n for (let i = 0; i < entryNames.length; i++) {\n entryIndexes[entryNames[i]] = i;\n }\n this.entryIndexes = entryIndexes;\n }\n get entryCount() {\n return this.entryNames.length;\n }\n indexForEntry(entryName) {\n return this.entryIndexes[entryName];\n }\n typeForEntry(entryName) {\n return this.entryTypes[this.entryIndexes[entryName]];\n }\n toString() {\n const parts = [];\n for (let i = 0; i < this.entryNames.length; i++) {\n parts.push(`${(0, sql_1.quotedIdentifier)(this.entryNames[i])} ${this.entryTypes[i]}`);\n }\n return `STRUCT(${parts.join(', ')})`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createStruct(this.entryNames, this.entryTypes.map((t) => t.toLogicalType()));\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n entryNames: [...this.entryNames],\n entryTypes: this.entryTypes.map(t => t.toJson()),\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.DuckDBStructType = DuckDBStructType;\nfunction STRUCT(entries, alias) {\n const entryNames = Object.keys(entries);\n const entryTypes = Object.values(entries);\n return new DuckDBStructType(entryNames, entryTypes, alias);\n}\nclass DuckDBMapType extends BaseDuckDBType {\n keyType;\n valueType;\n constructor(keyType, valueType, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.MAP, alias);\n this.keyType = keyType;\n this.valueType = valueType;\n }\n toString() {\n return `MAP(${this.keyType}, ${this.valueType})`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createMap(this.keyType.toLogicalType(), this.valueType.toLogicalType());\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n keyType: this.keyType.toJson(),\n valueType: this.valueType.toJson(),\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.DuckDBMapType = DuckDBMapType;\nfunction MAP(keyType, valueType, alias) {\n return new DuckDBMapType(keyType, valueType, alias);\n}\nclass DuckDBArrayType extends BaseDuckDBType {\n valueType;\n length;\n constructor(valueType, length, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.ARRAY, alias);\n this.valueType = valueType;\n this.length = length;\n }\n toString() {\n return `${this.valueType}[${this.length}]`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createArray(this.valueType.toLogicalType(), this.length);\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n valueType: this.valueType.toJson(),\n length: this.length,\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.DuckDBArrayType = DuckDBArrayType;\nfunction ARRAY(valueType, length, alias) {\n return new DuckDBArrayType(valueType, length, alias);\n}\nclass DuckDBUUIDType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.UUID, alias);\n }\n static instance = new DuckDBUUIDType();\n static create(alias) {\n return alias ? new DuckDBUUIDType(alias) : DuckDBUUIDType.instance;\n }\n get max() {\n return values_1.DuckDBUUIDValue.Max;\n }\n get min() {\n return values_1.DuckDBUUIDValue.Min;\n }\n}\nexports.DuckDBUUIDType = DuckDBUUIDType;\nexports.UUID = DuckDBUUIDType.instance;\nclass DuckDBUnionType extends BaseDuckDBType {\n memberTags;\n tagMemberIndexes;\n memberTypes;\n constructor(memberTags, memberTypes, alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.UNION, alias);\n if (memberTags.length !== memberTypes.length) {\n throw new Error(`Could not create DuckDBUnionType: \\\n tags length (${memberTags.length}) does not match valueTypes length (${memberTypes.length})`);\n }\n this.memberTags = memberTags;\n const tagMemberIndexes = {};\n for (let i = 0; i < memberTags.length; i++) {\n tagMemberIndexes[memberTags[i]] = i;\n }\n this.tagMemberIndexes = tagMemberIndexes;\n this.memberTypes = memberTypes;\n }\n memberIndexForTag(tag) {\n return this.tagMemberIndexes[tag];\n }\n memberTypeForTag(tag) {\n return this.memberTypes[this.tagMemberIndexes[tag]];\n }\n get memberCount() {\n return this.memberTags.length;\n }\n toString() {\n const parts = [];\n for (let i = 0; i < this.memberTags.length; i++) {\n parts.push(`${(0, sql_1.quotedIdentifier)(this.memberTags[i])} ${this.memberTypes[i]}`);\n }\n return `UNION(${parts.join(', ')})`;\n }\n toLogicalType() {\n const logicalType = DuckDBLogicalType_1.DuckDBLogicalType.createUnion(this.memberTags, this.memberTypes.map((t) => t.toLogicalType()));\n if (this.alias) {\n logicalType.alias = this.alias;\n }\n return logicalType;\n }\n toJson() {\n return {\n typeId: this.typeId,\n memberTags: [...this.memberTags],\n memberTypes: this.memberTypes.map(t => t.toJson()),\n ...(this.alias ? { alias: this.alias } : {}),\n };\n }\n}\nexports.DuckDBUnionType = DuckDBUnionType;\nfunction UNION(members, alias) {\n const memberTags = Object.keys(members);\n const memberTypes = Object.values(members);\n return new DuckDBUnionType(memberTags, memberTypes, alias);\n}\nclass DuckDBBitType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.BIT, alias);\n }\n static instance = new DuckDBBitType();\n static create(alias) {\n return alias ? new DuckDBBitType(alias) : DuckDBBitType.instance;\n }\n}\nexports.DuckDBBitType = DuckDBBitType;\nexports.BIT = DuckDBBitType.instance;\nclass DuckDBTimeTZType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIME_TZ, alias);\n }\n toString() {\n return 'TIME WITH TIME ZONE';\n }\n static instance = new DuckDBTimeTZType();\n static create(alias) {\n return alias ? new DuckDBTimeTZType(alias) : DuckDBTimeTZType.instance;\n }\n get max() {\n return values_1.DuckDBTimeTZValue.Max;\n }\n get min() {\n return values_1.DuckDBTimeTZValue.Min;\n }\n}\nexports.DuckDBTimeTZType = DuckDBTimeTZType;\nexports.TIMETZ = DuckDBTimeTZType.instance;\nclass DuckDBTimestampTZType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_TZ, alias);\n }\n toString() {\n return 'TIMESTAMP WITH TIME ZONE';\n }\n static instance = new DuckDBTimestampTZType();\n static create(alias) {\n return alias\n ? new DuckDBTimestampTZType(alias)\n : DuckDBTimestampTZType.instance;\n }\n get epoch() {\n return values_1.DuckDBTimestampTZValue.Epoch;\n }\n get max() {\n return values_1.DuckDBTimestampTZValue.Max;\n }\n get min() {\n return values_1.DuckDBTimestampTZValue.Min;\n }\n get posInf() {\n return values_1.DuckDBTimestampTZValue.PosInf;\n }\n get negInf() {\n return values_1.DuckDBTimestampTZValue.NegInf;\n }\n}\nexports.DuckDBTimestampTZType = DuckDBTimestampTZType;\nexports.TIMESTAMPTZ = DuckDBTimestampTZType.instance;\nclass DuckDBAnyType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.ANY, alias);\n }\n static instance = new DuckDBAnyType();\n static create(alias) {\n return alias ? new DuckDBAnyType(alias) : DuckDBAnyType.instance;\n }\n}\nexports.DuckDBAnyType = DuckDBAnyType;\nexports.ANY = DuckDBAnyType.instance;\nclass DuckDBBigNumType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.BIGNUM, alias);\n }\n static instance = new DuckDBBigNumType();\n static create(alias) {\n return alias ? new DuckDBBigNumType(alias) : DuckDBBigNumType.instance;\n }\n static Max = 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368n;\n static Min = -179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368n;\n get max() {\n return DuckDBBigNumType.Max;\n }\n get min() {\n return DuckDBBigNumType.Min;\n }\n}\nexports.DuckDBBigNumType = DuckDBBigNumType;\nexports.BIGNUM = DuckDBBigNumType.instance;\nclass DuckDBSQLNullType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.SQLNULL, alias);\n }\n static instance = new DuckDBSQLNullType();\n static create(alias) {\n return alias ? new DuckDBSQLNullType(alias) : DuckDBSQLNullType.instance;\n }\n}\nexports.DuckDBSQLNullType = DuckDBSQLNullType;\nexports.SQLNULL = DuckDBSQLNullType.instance;\nclass DuckDBStringLiteralType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.STRING_LITERAL, alias);\n }\n static instance = new DuckDBStringLiteralType();\n static create(alias) {\n return alias ? new DuckDBStringLiteralType(alias) : DuckDBStringLiteralType.instance;\n }\n}\nexports.DuckDBStringLiteralType = DuckDBStringLiteralType;\nexports.STRING_LITERAL = DuckDBStringLiteralType.instance;\nclass DuckDBIntegerLiteralType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.INTEGER_LITERAL, alias);\n }\n static instance = new DuckDBIntegerLiteralType();\n static create(alias) {\n return alias ? new DuckDBIntegerLiteralType(alias) : DuckDBIntegerLiteralType.instance;\n }\n}\nexports.DuckDBIntegerLiteralType = DuckDBIntegerLiteralType;\nexports.INTEGER_LITERAL = DuckDBIntegerLiteralType.instance;\nclass DuckDBTimeNSType extends BaseDuckDBType {\n constructor(alias) {\n super(DuckDBTypeId_1.DuckDBTypeId.TIME_NS, alias);\n }\n static instance = new DuckDBTimeNSType();\n static create(alias) {\n return alias ? new DuckDBTimeNSType(alias) : DuckDBTimeNSType.instance;\n }\n}\nexports.DuckDBTimeNSType = DuckDBTimeNSType;\nexports.TIME_NS = DuckDBTimeNSType.instance;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBUnionLogicalType = exports.DuckDBArrayLogicalType = exports.DuckDBMapLogicalType = exports.DuckDBStructLogicalType = exports.DuckDBListLogicalType = exports.DuckDBEnumLogicalType = exports.DuckDBDecimalLogicalType = exports.DuckDBLogicalType = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBType_1 = require(\"./DuckDBType\");\nconst DuckDBTypeId_1 = require(\"./DuckDBTypeId\");\nclass DuckDBLogicalType {\n logical_type;\n constructor(logical_type) {\n this.logical_type = logical_type;\n }\n static create(logical_type) {\n switch (node_bindings_1.default.get_type_id(logical_type)) {\n case node_bindings_1.default.Type.DECIMAL:\n return new DuckDBDecimalLogicalType(logical_type);\n case node_bindings_1.default.Type.ENUM:\n return new DuckDBEnumLogicalType(logical_type);\n case node_bindings_1.default.Type.LIST:\n return new DuckDBListLogicalType(logical_type);\n case node_bindings_1.default.Type.STRUCT:\n return new DuckDBStructLogicalType(logical_type);\n case node_bindings_1.default.Type.MAP:\n return new DuckDBMapLogicalType(logical_type);\n case node_bindings_1.default.Type.ARRAY:\n return new DuckDBArrayLogicalType(logical_type);\n case node_bindings_1.default.Type.UNION:\n return new DuckDBUnionLogicalType(logical_type);\n default:\n return new DuckDBLogicalType(logical_type);\n }\n }\n static createDecimal(width, scale) {\n return new DuckDBDecimalLogicalType(node_bindings_1.default.create_decimal_type(width, scale));\n }\n static createEnum(member_names) {\n return new DuckDBEnumLogicalType(node_bindings_1.default.create_enum_type(member_names));\n }\n static createList(valueType) {\n return new DuckDBListLogicalType(node_bindings_1.default.create_list_type(valueType.logical_type));\n }\n static createStruct(entryNames, entryLogicalTypes) {\n const length = entryNames.length;\n if (length !== entryLogicalTypes.length) {\n throw new Error(`Could not create struct: \\\n entryNames length (${entryNames.length}) does not match entryLogicalTypes length (${entryLogicalTypes.length})`);\n }\n const member_types = [];\n const member_names = [];\n for (let i = 0; i < length; i++) {\n member_types.push(entryLogicalTypes[i].logical_type);\n member_names.push(entryNames[i]);\n }\n return new DuckDBStructLogicalType(node_bindings_1.default.create_struct_type(member_types, member_names));\n }\n static createMap(keyType, valueType) {\n return new DuckDBMapLogicalType(node_bindings_1.default.create_map_type(keyType.logical_type, valueType.logical_type));\n }\n static createArray(valueType, length) {\n return new DuckDBArrayLogicalType(node_bindings_1.default.create_array_type(valueType.logical_type, length));\n }\n static createUnion(memberTags, memberLogicalTypes) {\n const length = memberTags.length;\n if (length !== memberLogicalTypes.length) {\n throw new Error(`Could not create union: \\\n memberTags length (${memberTags.length}) does not match memberLogicalTypes length (${memberLogicalTypes.length})`);\n }\n const member_types = [];\n const member_names = [];\n for (let i = 0; i < length; i++) {\n member_types.push(memberLogicalTypes[i].logical_type);\n member_names.push(memberTags[i]);\n }\n return new DuckDBUnionLogicalType(node_bindings_1.default.create_union_type(member_types, member_names));\n }\n get typeId() {\n return node_bindings_1.default.get_type_id(this.logical_type);\n }\n get alias() {\n return node_bindings_1.default.logical_type_get_alias(this.logical_type) || undefined;\n }\n set alias(newAlias) {\n node_bindings_1.default.logical_type_set_alias(this.logical_type, newAlias || '');\n }\n asType() {\n const alias = this.alias;\n switch (this.typeId) {\n case DuckDBTypeId_1.DuckDBTypeId.BOOLEAN:\n return DuckDBType_1.DuckDBBooleanType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TINYINT:\n return DuckDBType_1.DuckDBTinyIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.SMALLINT:\n return DuckDBType_1.DuckDBSmallIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.INTEGER:\n return DuckDBType_1.DuckDBIntegerType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.BIGINT:\n return DuckDBType_1.DuckDBBigIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.UTINYINT:\n return DuckDBType_1.DuckDBUTinyIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.USMALLINT:\n return DuckDBType_1.DuckDBUSmallIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.UINTEGER:\n return DuckDBType_1.DuckDBUIntegerType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.UBIGINT:\n return DuckDBType_1.DuckDBUBigIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.FLOAT:\n return DuckDBType_1.DuckDBFloatType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.DOUBLE:\n return DuckDBType_1.DuckDBDoubleType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP:\n return DuckDBType_1.DuckDBTimestampType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.DATE:\n return DuckDBType_1.DuckDBDateType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIME:\n return DuckDBType_1.DuckDBTimeType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.INTERVAL:\n return DuckDBType_1.DuckDBIntervalType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.HUGEINT:\n return DuckDBType_1.DuckDBHugeIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.UHUGEINT:\n return DuckDBType_1.DuckDBUHugeIntType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.VARCHAR:\n return DuckDBType_1.DuckDBVarCharType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.BLOB:\n return DuckDBType_1.DuckDBBlobType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.DECIMAL:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_S:\n return DuckDBType_1.DuckDBTimestampSecondsType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_MS:\n return DuckDBType_1.DuckDBTimestampMillisecondsType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_NS:\n return DuckDBType_1.DuckDBTimestampNanosecondsType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.ENUM:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.LIST:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.STRUCT:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.MAP:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.ARRAY:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.UUID:\n return DuckDBType_1.DuckDBUUIDType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.UNION:\n throw new Error('Expected override');\n case DuckDBTypeId_1.DuckDBTypeId.BIT:\n return DuckDBType_1.DuckDBBitType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIME_TZ:\n return DuckDBType_1.DuckDBTimeTZType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_TZ:\n return DuckDBType_1.DuckDBTimestampTZType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.ANY:\n return DuckDBType_1.DuckDBAnyType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.BIGNUM:\n return DuckDBType_1.DuckDBBigNumType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.SQLNULL:\n return DuckDBType_1.DuckDBSQLNullType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.STRING_LITERAL:\n return DuckDBType_1.DuckDBStringLiteralType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.INTEGER_LITERAL:\n return DuckDBType_1.DuckDBIntegerLiteralType.create(alias);\n case DuckDBTypeId_1.DuckDBTypeId.TIME_NS:\n return DuckDBType_1.DuckDBTimeNSType.create(alias);\n default:\n throw new Error(`Unexpected type id: ${this.typeId}`);\n }\n }\n}\nexports.DuckDBLogicalType = DuckDBLogicalType;\nclass DuckDBDecimalLogicalType extends DuckDBLogicalType {\n get width() {\n return node_bindings_1.default.decimal_width(this.logical_type);\n }\n get scale() {\n return node_bindings_1.default.decimal_scale(this.logical_type);\n }\n get internalTypeId() {\n return node_bindings_1.default.decimal_internal_type(this.logical_type);\n }\n asType() {\n return new DuckDBType_1.DuckDBDecimalType(this.width, this.scale, this.alias);\n }\n}\nexports.DuckDBDecimalLogicalType = DuckDBDecimalLogicalType;\nclass DuckDBEnumLogicalType extends DuckDBLogicalType {\n get valueCount() {\n return node_bindings_1.default.enum_dictionary_size(this.logical_type);\n }\n value(index) {\n return node_bindings_1.default.enum_dictionary_value(this.logical_type, index);\n }\n values() {\n const values = [];\n const count = this.valueCount;\n for (let i = 0; i < count; i++) {\n values.push(this.value(i));\n }\n return values;\n }\n get internalTypeId() {\n return node_bindings_1.default.enum_internal_type(this.logical_type);\n }\n asType() {\n return new DuckDBType_1.DuckDBEnumType(this.values(), this.internalTypeId, this.alias);\n }\n}\nexports.DuckDBEnumLogicalType = DuckDBEnumLogicalType;\nclass DuckDBListLogicalType extends DuckDBLogicalType {\n get valueType() {\n return DuckDBLogicalType.create(node_bindings_1.default.list_type_child_type(this.logical_type));\n }\n asType() {\n return new DuckDBType_1.DuckDBListType(this.valueType.asType(), this.alias);\n }\n}\nexports.DuckDBListLogicalType = DuckDBListLogicalType;\nclass DuckDBStructLogicalType extends DuckDBLogicalType {\n get entryCount() {\n return node_bindings_1.default.struct_type_child_count(this.logical_type);\n }\n entryName(index) {\n return node_bindings_1.default.struct_type_child_name(this.logical_type, index);\n }\n entryLogicalType(index) {\n return DuckDBLogicalType.create(node_bindings_1.default.struct_type_child_type(this.logical_type, index));\n }\n entryType(index) {\n return this.entryLogicalType(index).asType();\n }\n entryNames() {\n const names = [];\n const count = this.entryCount;\n for (let i = 0; i < count; i++) {\n names.push(this.entryName(i));\n }\n return names;\n }\n entryLogicalTypes() {\n const valueTypes = [];\n const count = this.entryCount;\n for (let i = 0; i < count; i++) {\n valueTypes.push(this.entryLogicalType(i));\n }\n return valueTypes;\n }\n entryTypes() {\n const valueTypes = [];\n const count = this.entryCount;\n for (let i = 0; i < count; i++) {\n valueTypes.push(this.entryType(i));\n }\n return valueTypes;\n }\n asType() {\n return new DuckDBType_1.DuckDBStructType(this.entryNames(), this.entryTypes(), this.alias);\n }\n}\nexports.DuckDBStructLogicalType = DuckDBStructLogicalType;\nclass DuckDBMapLogicalType extends DuckDBLogicalType {\n get keyType() {\n return DuckDBLogicalType.create(node_bindings_1.default.map_type_key_type(this.logical_type));\n }\n get valueType() {\n return DuckDBLogicalType.create(node_bindings_1.default.map_type_value_type(this.logical_type));\n }\n asType() {\n return new DuckDBType_1.DuckDBMapType(this.keyType.asType(), this.valueType.asType(), this.alias);\n }\n}\nexports.DuckDBMapLogicalType = DuckDBMapLogicalType;\nclass DuckDBArrayLogicalType extends DuckDBLogicalType {\n get valueType() {\n return DuckDBLogicalType.create(node_bindings_1.default.array_type_child_type(this.logical_type));\n }\n get length() {\n return node_bindings_1.default.array_type_array_size(this.logical_type);\n }\n asType() {\n return new DuckDBType_1.DuckDBArrayType(this.valueType.asType(), this.length, this.alias);\n }\n}\nexports.DuckDBArrayLogicalType = DuckDBArrayLogicalType;\nclass DuckDBUnionLogicalType extends DuckDBLogicalType {\n get memberCount() {\n return node_bindings_1.default.union_type_member_count(this.logical_type);\n }\n memberTag(index) {\n return node_bindings_1.default.union_type_member_name(this.logical_type, index);\n }\n memberLogicalType(index) {\n return DuckDBLogicalType.create(node_bindings_1.default.union_type_member_type(this.logical_type, index));\n }\n memberType(index) {\n return this.memberLogicalType(index).asType();\n }\n memberTags() {\n const tags = [];\n const count = this.memberCount;\n for (let i = 0; i < count; i++) {\n tags.push(this.memberTag(i));\n }\n return tags;\n }\n memberLogicalTypes() {\n const valueTypes = [];\n const count = this.memberCount;\n for (let i = 0; i < count; i++) {\n valueTypes.push(this.memberLogicalType(i));\n }\n return valueTypes;\n }\n memberTypes() {\n const valueTypes = [];\n const count = this.memberCount;\n for (let i = 0; i < count; i++) {\n valueTypes.push(this.memberType(i));\n }\n return valueTypes;\n }\n asType() {\n return new DuckDBType_1.DuckDBUnionType(this.memberTags(), this.memberTypes(), this.alias);\n }\n}\nexports.DuckDBUnionLogicalType = DuckDBUnionLogicalType;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.typeForValue = typeForValue;\nconst DuckDBType_1 = require(\"./DuckDBType\");\nconst values_1 = require(\"./values\");\nfunction typeForValue(value) {\n if (value === null) {\n return DuckDBType_1.SQLNULL;\n }\n else {\n switch (typeof value) {\n case 'boolean':\n return DuckDBType_1.BOOLEAN;\n case 'number':\n if (Math.round(value) === value) {\n return DuckDBType_1.INTEGER;\n }\n else {\n return DuckDBType_1.DOUBLE;\n }\n case 'bigint':\n return DuckDBType_1.HUGEINT;\n case 'string':\n return DuckDBType_1.VARCHAR;\n case 'object':\n if (value instanceof values_1.DuckDBArrayValue) {\n return (0, DuckDBType_1.ARRAY)(typeForValue(value.items[0]), value.items.length);\n }\n else if (value instanceof values_1.DuckDBBitValue) {\n return DuckDBType_1.BIT;\n }\n else if (value instanceof values_1.DuckDBBlobValue) {\n return DuckDBType_1.BLOB;\n }\n else if (value instanceof values_1.DuckDBDateValue) {\n return DuckDBType_1.DATE;\n }\n else if (value instanceof values_1.DuckDBDecimalValue) {\n return (0, DuckDBType_1.DECIMAL)(value.width, value.scale);\n }\n else if (value instanceof values_1.DuckDBIntervalValue) {\n return DuckDBType_1.INTERVAL;\n }\n else if (value instanceof values_1.DuckDBListValue) {\n return (0, DuckDBType_1.LIST)(typeForValue(value.items[0]));\n }\n else if (value instanceof values_1.DuckDBMapValue) {\n return (0, DuckDBType_1.MAP)(typeForValue(value.entries[0].key), typeForValue(value.entries[0].value));\n }\n else if (value instanceof values_1.DuckDBStructValue) {\n const entryTypes = {};\n for (const key in value.entries) {\n entryTypes[key] = typeForValue(value.entries[key]);\n }\n return (0, DuckDBType_1.STRUCT)(entryTypes);\n }\n else if (value instanceof values_1.DuckDBTimestampMillisecondsValue) {\n return DuckDBType_1.TIMESTAMP_MS;\n }\n else if (value instanceof values_1.DuckDBTimestampNanosecondsValue) {\n return DuckDBType_1.TIMESTAMP_NS;\n }\n else if (value instanceof values_1.DuckDBTimestampSecondsValue) {\n return DuckDBType_1.TIMESTAMP_S;\n }\n else if (value instanceof values_1.DuckDBTimestampTZValue) {\n return DuckDBType_1.TIMESTAMPTZ;\n }\n else if (value instanceof values_1.DuckDBTimestampValue) {\n return DuckDBType_1.TIMESTAMP;\n }\n else if (value instanceof values_1.DuckDBTimeTZValue) {\n return DuckDBType_1.TIMETZ;\n }\n else if (value instanceof values_1.DuckDBTimeValue) {\n return DuckDBType_1.TIME;\n }\n else if (value instanceof values_1.DuckDBTimeNSValue) {\n return DuckDBType_1.TIME_NS;\n }\n else if (value instanceof values_1.DuckDBUnionValue) {\n return (0, DuckDBType_1.UNION)({ [value.tag]: typeForValue(value.value) });\n }\n else if (value instanceof values_1.DuckDBUUIDValue) {\n return DuckDBType_1.UUID;\n }\n break;\n }\n }\n return DuckDBType_1.ANY;\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBAppender = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst createValue_1 = require(\"./createValue\");\nconst DuckDBLogicalType_1 = require(\"./DuckDBLogicalType\");\nconst DuckDBType_1 = require(\"./DuckDBType\");\nconst typeForValue_1 = require(\"./typeForValue\");\nconst values_1 = require(\"./values\");\nclass DuckDBAppender {\n appender;\n constructor(appender) {\n this.appender = appender;\n }\n closeSync() {\n node_bindings_1.default.appender_close_sync(this.appender);\n }\n flushSync() {\n node_bindings_1.default.appender_flush_sync(this.appender);\n }\n get columnCount() {\n return node_bindings_1.default.appender_column_count(this.appender);\n }\n columnType(columnIndex) {\n return DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.appender_column_type(this.appender, columnIndex)).asType();\n }\n endRow() {\n node_bindings_1.default.appender_end_row(this.appender);\n }\n appendDefault() {\n node_bindings_1.default.append_default(this.appender);\n }\n appendBoolean(value) {\n node_bindings_1.default.append_bool(this.appender, value);\n }\n appendTinyInt(value) {\n node_bindings_1.default.append_int8(this.appender, value);\n }\n appendSmallInt(value) {\n node_bindings_1.default.append_int16(this.appender, value);\n }\n appendInteger(value) {\n node_bindings_1.default.append_int32(this.appender, value);\n }\n appendBigInt(value) {\n node_bindings_1.default.append_int64(this.appender, value);\n }\n appendHugeInt(value) {\n node_bindings_1.default.append_hugeint(this.appender, value);\n }\n appendUTinyInt(value) {\n node_bindings_1.default.append_uint8(this.appender, value);\n }\n appendUSmallInt(value) {\n node_bindings_1.default.append_uint16(this.appender, value);\n }\n appendUInteger(value) {\n node_bindings_1.default.append_uint32(this.appender, value);\n }\n appendUBigInt(value) {\n node_bindings_1.default.append_uint64(this.appender, value);\n }\n appendUHugeInt(value) {\n node_bindings_1.default.append_uhugeint(this.appender, value);\n }\n appendDecimal(value) {\n // The width and scale of the DECIMAL type here aren't actually used.\n this.appendValue(value, (0, DuckDBType_1.DECIMAL)(value.width, value.scale));\n }\n appendFloat(value) {\n node_bindings_1.default.append_float(this.appender, value);\n }\n appendDouble(value) {\n node_bindings_1.default.append_double(this.appender, value);\n }\n appendDate(value) {\n node_bindings_1.default.append_date(this.appender, value);\n }\n appendTime(value) {\n node_bindings_1.default.append_time(this.appender, value);\n }\n appendTimeTZ(value) {\n this.appendValue(value, DuckDBType_1.TIMETZ);\n }\n appendTimestamp(value) {\n node_bindings_1.default.append_timestamp(this.appender, value);\n }\n appendTimestampTZ(value) {\n this.appendValue(value, DuckDBType_1.TIMESTAMPTZ);\n }\n appendTimestampSeconds(value) {\n this.appendValue(value, DuckDBType_1.TIMESTAMP_S);\n }\n appendTimestampMilliseconds(value) {\n this.appendValue(value, DuckDBType_1.TIMESTAMP_MS);\n }\n appendTimestampNanoseconds(value) {\n this.appendValue(value, DuckDBType_1.TIMESTAMP_NS);\n }\n appendInterval(value) {\n node_bindings_1.default.append_interval(this.appender, value);\n }\n appendVarchar(value) {\n node_bindings_1.default.append_varchar(this.appender, value);\n }\n appendBlob(value) {\n node_bindings_1.default.append_blob(this.appender, value);\n }\n appendEnum(value, type) {\n this.appendValue(value, type);\n }\n appendList(value, type) {\n this.appendValue(value instanceof values_1.DuckDBListValue ? value : (0, values_1.listValue)(value), type);\n }\n appendStruct(value, type) {\n this.appendValue(value instanceof values_1.DuckDBStructValue ? value : (0, values_1.structValue)(value), type);\n }\n appendMap(value, type) {\n this.appendValue(value, type);\n }\n appendArray(value, type) {\n this.appendValue(value instanceof values_1.DuckDBArrayValue ? value : (0, values_1.arrayValue)(value), type);\n }\n appendUnion(value, type) {\n this.appendValue(value, type);\n }\n appendUUID(value) {\n this.appendValue(value, DuckDBType_1.UUID);\n }\n appendBit(value) {\n this.appendValue(value, DuckDBType_1.BIT);\n }\n appendBigNum(value) {\n this.appendValue(value, DuckDBType_1.BIGNUM);\n }\n appendNull() {\n node_bindings_1.default.append_null(this.appender);\n }\n appendValue(value, type) {\n node_bindings_1.default.append_value(this.appender, (0, createValue_1.createValue)(type ? type : (0, typeForValue_1.typeForValue)(value), value));\n }\n appendDataChunk(dataChunk) {\n node_bindings_1.default.append_data_chunk(this.appender, dataChunk.chunk);\n }\n}\nexports.DuckDBAppender = DuckDBAppender;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBClientContext = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nclass DuckDBClientContext {\n client_context;\n constructor(client_context) {\n this.client_context = client_context;\n }\n get connectionId() {\n return node_bindings_1.default.client_context_get_connection_id(this.client_context);\n }\n}\nexports.DuckDBClientContext = DuckDBClientContext;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBTimeNSVector = exports.DuckDBBigNumVector = exports.DuckDBTimestampTZVector = exports.DuckDBTimeTZVector = exports.DuckDBBitVector = exports.DuckDBUnionVector = exports.DuckDBUUIDVector = exports.DuckDBArrayVector = exports.DuckDBMapVector = exports.DuckDBStructVector = exports.DuckDBListVector = exports.DuckDBEnum32Vector = exports.DuckDBEnum16Vector = exports.DuckDBEnum8Vector = exports.DuckDBTimestampNanosecondsVector = exports.DuckDBTimestampMillisecondsVector = exports.DuckDBTimestampSecondsVector = exports.DuckDBDecimal128Vector = exports.DuckDBDecimal64Vector = exports.DuckDBDecimal32Vector = exports.DuckDBDecimal16Vector = exports.DuckDBBlobVector = exports.DuckDBVarCharVector = exports.DuckDBUHugeIntVector = exports.DuckDBHugeIntVector = exports.DuckDBIntervalVector = exports.DuckDBTimeVector = exports.DuckDBDateVector = exports.DuckDBTimestampVector = exports.DuckDBDoubleVector = exports.DuckDBFloatVector = exports.DuckDBUBigIntVector = exports.DuckDBUIntegerVector = exports.DuckDBUSmallIntVector = exports.DuckDBUTinyIntVector = exports.DuckDBBigIntVector = exports.DuckDBIntegerVector = exports.DuckDBSmallIntVector = exports.DuckDBTinyIntVector = exports.DuckDBBooleanVector = exports.DuckDBVector = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst os_1 = __importDefault(require(\"os\"));\nconst DuckDBLogicalType_1 = require(\"./DuckDBLogicalType\");\nconst DuckDBType_1 = require(\"./DuckDBType\");\nconst DuckDBTypeId_1 = require(\"./DuckDBTypeId\");\nconst values_1 = require(\"./values\");\nconst littleEndian = os_1.default.endianness() === 'LE';\n// function getInt8(dataView: DataView, offset: number): number {\n// return dataView.getInt8(offset);\n// }\nfunction getUInt8(dataView, offset) {\n return dataView.getUint8(offset);\n}\nfunction getInt16(dataView, offset) {\n return dataView.getInt16(offset, littleEndian);\n}\nfunction getUInt16(dataView, offset) {\n return dataView.getUint16(offset, littleEndian);\n}\nfunction getInt32(dataView, offset) {\n return dataView.getInt32(offset, littleEndian);\n}\nfunction getUInt32(dataView, offset) {\n return dataView.getUint32(offset, littleEndian);\n}\nfunction getInt64(dataView, offset) {\n return dataView.getBigInt64(offset, littleEndian);\n}\nfunction getUInt64(dataView, offset) {\n return dataView.getBigUint64(offset, littleEndian);\n}\n// function getFloat32(dataView: DataView, offset: number): number {\n// return dataView.getFloat32(offset, littleEndian);\n// }\n// function getFloat64(dataView: DataView, offset: number): number {\n// return dataView.getFloat64(offset, littleEndian);\n// }\nfunction getInt128(dataView, offset) {\n const lower = getUInt64(dataView, offset);\n const upper = getInt64(dataView, offset + 8);\n return (upper << BigInt(64)) + lower;\n}\nfunction getUInt128(dataView, offset) {\n const lower = getUInt64(dataView, offset);\n const upper = getUInt64(dataView, offset + 8);\n return (BigInt.asUintN(64, upper) << BigInt(64)) | BigInt.asUintN(64, lower);\n}\nfunction getStringBytes(dataView, offset) {\n const lengthInBytes = dataView.getUint32(offset, true);\n if (lengthInBytes <= 12) {\n return new Uint8Array(dataView.buffer, dataView.byteOffset + offset + 4, lengthInBytes);\n }\n else {\n return node_bindings_1.default.get_data_from_pointer(dataView.buffer, dataView.byteOffset + offset + 8, lengthInBytes);\n }\n}\nconst textDecoder = new TextDecoder();\nfunction getString(dataView, offset) {\n const stringBytes = getStringBytes(dataView, offset);\n return textDecoder.decode(stringBytes);\n}\nfunction getBuffer(dataView, offset) {\n const stringBytes = getStringBytes(dataView, offset);\n return Buffer.from(stringBytes);\n}\nfunction getBigNumFromBytes(bytes) {\n const firstByte = bytes[0];\n const positive = (firstByte & 0x80) > 0;\n const uint64Mask = positive ? 0n : 0xffffffffffffffffn;\n const uint8Mask = positive ? 0 : 0xff;\n const dv = new DataView(// bytes is big endian\n bytes.buffer, bytes.byteOffset + 3, bytes.byteLength - 3);\n const lastUint64Offset = dv.byteLength - 8;\n let offset = 0;\n let result = 0n;\n while (offset <= lastUint64Offset) {\n result = (result << 64n) | (dv.getBigUint64(offset) ^ uint64Mask);\n offset += 8;\n }\n while (offset < dv.byteLength) {\n result = (result << 8n) | BigInt(dv.getUint8(offset) ^ uint8Mask);\n offset += 1;\n }\n return positive ? result : -result;\n}\nfunction getBytesFromBigNum(bignum) {\n const numberBytes = []; // little endian\n const negative = bignum < 0;\n if (bignum === 0n) {\n numberBytes.push(0);\n }\n else {\n let vi = bignum < 0 ? -bignum : bignum;\n while (vi !== 0n) {\n numberBytes.push(Number(BigInt.asUintN(8, vi)));\n vi >>= 8n;\n }\n }\n const bigNumBytes = new Uint8Array(3 + numberBytes.length); // big endian\n let header = 0x800000 | numberBytes.length;\n if (negative) {\n header = ~header;\n }\n bigNumBytes[0] = 0xff & (header >> 16);\n bigNumBytes[1] = 0xff & (header >> 8);\n bigNumBytes[2] = 0xff & header;\n for (let i = 0; i < numberBytes.length; i++) {\n const byte = numberBytes[numberBytes.length - 1 - i];\n bigNumBytes[3 + i] = negative ? ~byte : byte;\n }\n return bigNumBytes;\n}\nfunction getBoolean1(dataView, offset) {\n return getUInt8(dataView, offset) !== 0;\n}\nfunction getBoolean2(dataView, offset) {\n return getUInt16(dataView, offset) !== 0;\n}\nfunction getBoolean4(dataView, offset) {\n return getUInt32(dataView, offset) !== 0;\n}\nfunction getBoolean8(dataView, offset) {\n return getUInt64(dataView, offset) !== BigInt(0);\n}\nfunction makeGetBoolean() {\n switch (node_bindings_1.default.sizeof_bool) {\n case 1:\n return getBoolean1;\n case 2:\n return getBoolean2;\n case 4:\n return getBoolean4;\n case 8:\n return getBoolean8;\n default:\n throw new Error(`Unsupported boolean size: ${node_bindings_1.default.sizeof_bool}`);\n }\n}\nconst getBoolean = makeGetBoolean();\n// function setInt8(dataView: DataView, offset: number, value: number) {\n// dataView.setInt8(offset, value);\n// }\nfunction setUInt8(dataView, offset, value) {\n dataView.setUint8(offset, value);\n}\nfunction setInt16(dataView, offset, value) {\n dataView.setInt16(offset, value, littleEndian);\n}\nfunction setUInt16(dataView, offset, value) {\n dataView.setUint16(offset, value, littleEndian);\n}\nfunction setInt32(dataView, offset, value) {\n dataView.setInt32(offset, value, littleEndian);\n}\nfunction setUInt32(dataView, offset, value) {\n dataView.setUint32(offset, value, littleEndian);\n}\nfunction setInt64(dataView, offset, value) {\n dataView.setBigInt64(offset, value, littleEndian);\n}\nfunction setUInt64(dataView, offset, value) {\n dataView.setBigUint64(offset, value, littleEndian);\n}\nfunction setInt128(dataView, offset, value) {\n const lower = BigInt.asUintN(64, value);\n const upper = BigInt.asIntN(64, value >> BigInt(64));\n dataView.setBigUint64(offset, lower, littleEndian);\n dataView.setBigInt64(offset + 8, upper, littleEndian);\n}\nfunction setUInt128(dataView, offset, value) {\n const lower = BigInt.asUintN(64, value);\n const upper = BigInt.asUintN(64, value >> BigInt(64));\n dataView.setBigUint64(offset, lower, littleEndian);\n dataView.setBigUint64(offset + 8, upper, littleEndian);\n}\nfunction setBoolean1(dataView, offset, value) {\n setUInt8(dataView, offset, value ? 1 : 0);\n}\nfunction setBoolean2(dataView, offset, value) {\n setUInt16(dataView, offset, value ? 1 : 0);\n}\nfunction setBoolean4(dataView, offset, value) {\n setUInt32(dataView, offset, value ? 1 : 0);\n}\nfunction setBoolean8(dataView, offset, value) {\n setUInt64(dataView, offset, value ? BigInt(1) : BigInt(0));\n}\nfunction makeSetBoolean() {\n switch (node_bindings_1.default.sizeof_bool) {\n case 1:\n return setBoolean1;\n case 2:\n return setBoolean2;\n case 4:\n return setBoolean4;\n case 8:\n return setBoolean8;\n default:\n throw new Error(`Unsupported boolean size: ${node_bindings_1.default.sizeof_bool}`);\n }\n}\nconst setBoolean = makeSetBoolean();\nfunction getDecimal16(dataView, offset, type) {\n const value = getInt16(dataView, offset);\n return new values_1.DuckDBDecimalValue(BigInt(value), type.width, type.scale);\n}\nfunction getDecimal32(dataView, offset, type) {\n const value = getInt32(dataView, offset);\n return new values_1.DuckDBDecimalValue(BigInt(value), type.width, type.scale);\n}\nfunction getDecimal64(dataView, offset, type) {\n const value = getInt64(dataView, offset);\n return new values_1.DuckDBDecimalValue(value, type.width, type.scale);\n}\nfunction getDecimal128(dataView, offset, type) {\n const value = getInt128(dataView, offset);\n return new values_1.DuckDBDecimalValue(value, type.width, type.scale);\n}\nfunction vectorData(vector, byteCount) {\n return node_bindings_1.default.vector_get_data(vector, byteCount);\n}\n// This version of DuckDBValidity is almost 10x slower.\n// class DuckDBValidity {\n// private readonly validity_pointer: ddb.uint64_pointer;\n// private readonly offset: number;\n// private constructor(validity_pointer: ddb.uint64_pointer, offset: number = 0) {\n// this.validity_pointer = validity_pointer;\n// this.offset = offset;\n// }\n// public static fromVector(vector: ddb.duckdb_vector, itemCount: number, offset: number = 0): DuckDBValidity {\n// const validity_pointer = ddb.duckdb_vector_get_validity(vector);\n// return new DuckDBValidity(validity_pointer, offset);\n// }\n// public itemValid(itemIndex: number): boolean {\n// return ddb.duckdb_validity_row_is_valid(this.validity_pointer, this.offset + itemIndex);\n// }\n// public slice(offset: number): DuckDBValidity {\n// return new DuckDBValidity(this.validity_pointer, this.offset + offset);\n// }\n// }\nclass DuckDBValidity {\n data;\n offset;\n itemCount;\n constructor(data, offset, itemCount) {\n this.data = data;\n this.offset = offset;\n this.itemCount = itemCount;\n }\n static fromVector(vector, itemCount) {\n const uint64Count = Math.ceil(itemCount / 64);\n const bytes = node_bindings_1.default.vector_get_validity(vector, uint64Count * 8);\n if (!bytes) {\n return new DuckDBValidity(null, 0, itemCount);\n }\n const bigints = new BigUint64Array(bytes.buffer, bytes.byteOffset, uint64Count);\n return new DuckDBValidity(bigints, 0, itemCount);\n }\n itemValid(itemIndex) {\n if (!this.data) {\n return true;\n }\n const bit = this.offset + itemIndex;\n return ((this.data[Math.floor(bit / 64)] & (BigInt(1) << BigInt(bit % 64))) !==\n BigInt(0));\n }\n setItemValid(itemIndex, valid) {\n if (!this.data && !valid) {\n // An item is being set to invalid and we don't have a data buffer, so create it. If an item is being set to valid\n // and we don't have a data buffer, then there's nothing to do; a null data buffer indicates all items are valid.\n const uint64Count = Math.ceil(this.itemCount / 64);\n const buffer = new ArrayBuffer(uint64Count * 8);\n this.data = new BigUint64Array(buffer, 0, uint64Count);\n // Initialize to all items to valid.\n for (let i = 0; i < this.data.length; i++) {\n this.data[i] = 0xffffffffffffffffn;\n }\n }\n if (this.data) {\n const bit = this.offset + itemIndex;\n const uint64Index = Math.floor(bit / 64);\n const uint64WithBitSet = BigInt(1) << BigInt(bit % 64);\n if (valid) {\n if ((this.data[uint64Index] & uint64WithBitSet) === 0n) {\n this.data[uint64Index] |= uint64WithBitSet;\n }\n }\n else {\n if ((this.data[uint64Index] & uint64WithBitSet) !== 0n) {\n this.data[uint64Index] &= ~uint64WithBitSet;\n }\n }\n }\n }\n flush(vector) {\n if (this.data) {\n node_bindings_1.default.vector_ensure_validity_writable(vector);\n node_bindings_1.default.copy_data_to_vector_validity(vector, 0, this.data.buffer, this.data.byteOffset, this.data.byteLength);\n }\n }\n slice(offset, itemCount) {\n return new DuckDBValidity(this.data, this.offset + offset, itemCount);\n }\n}\nclass DuckDBVector {\n static standardSize() {\n return node_bindings_1.default.vector_size();\n }\n static create(vector, itemCount, knownType) {\n const vectorType = knownType\n ? knownType\n : DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.vector_get_column_type(vector)).asType();\n switch (vectorType.typeId) {\n case DuckDBTypeId_1.DuckDBTypeId.BOOLEAN:\n return DuckDBBooleanVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TINYINT:\n return DuckDBTinyIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.SMALLINT:\n return DuckDBSmallIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.INTEGER:\n return DuckDBIntegerVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.BIGINT:\n return DuckDBBigIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.UTINYINT:\n return DuckDBUTinyIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.USMALLINT:\n return DuckDBUSmallIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.UINTEGER:\n return DuckDBUIntegerVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.UBIGINT:\n return DuckDBUBigIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.FLOAT:\n return DuckDBFloatVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.DOUBLE:\n return DuckDBDoubleVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP:\n return DuckDBTimestampVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.DATE:\n return DuckDBDateVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TIME:\n return DuckDBTimeVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.INTERVAL:\n return DuckDBIntervalVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.HUGEINT:\n return DuckDBHugeIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.UHUGEINT:\n return DuckDBUHugeIntVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.VARCHAR:\n return DuckDBVarCharVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.BLOB:\n return DuckDBBlobVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.DECIMAL:\n if (vectorType instanceof DuckDBType_1.DuckDBDecimalType) {\n const { width } = vectorType;\n if (width <= 0) {\n throw new Error(`DECIMAL width not positive: ${width}`);\n }\n else if (width <= 4) {\n return DuckDBDecimal16Vector.fromRawVector(vectorType, vector, itemCount);\n }\n else if (width <= 9) {\n return DuckDBDecimal32Vector.fromRawVector(vectorType, vector, itemCount);\n }\n else if (width <= 18) {\n return DuckDBDecimal64Vector.fromRawVector(vectorType, vector, itemCount);\n }\n else if (width <= 38) {\n return DuckDBDecimal128Vector.fromRawVector(vectorType, vector, itemCount);\n }\n else {\n throw new Error(`DECIMAL width too large: ${width}`);\n }\n }\n throw new Error('DuckDBType has DECIMAL type id but is not an instance of DuckDBDecimalType');\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_S:\n return DuckDBTimestampSecondsVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_MS:\n return DuckDBTimestampMillisecondsVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_NS:\n return DuckDBTimestampNanosecondsVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.ENUM:\n if (vectorType instanceof DuckDBType_1.DuckDBEnumType) {\n const { internalTypeId } = vectorType;\n switch (internalTypeId) {\n case DuckDBTypeId_1.DuckDBTypeId.UTINYINT:\n return DuckDBEnum8Vector.fromRawVector(vectorType, vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.USMALLINT:\n return DuckDBEnum16Vector.fromRawVector(vectorType, vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.UINTEGER:\n return DuckDBEnum32Vector.fromRawVector(vectorType, vector, itemCount);\n default:\n throw new Error(`unsupported ENUM internal type: ${internalTypeId}`);\n }\n }\n throw new Error('DuckDBType has ENUM type id but is not an instance of DuckDBEnumType');\n case DuckDBTypeId_1.DuckDBTypeId.LIST:\n if (vectorType instanceof DuckDBType_1.DuckDBListType) {\n return DuckDBListVector.fromRawVector(vectorType, vector, itemCount);\n }\n throw new Error('DuckDBType has LIST type id but is not an instance of DuckDBListType');\n case DuckDBTypeId_1.DuckDBTypeId.STRUCT:\n if (vectorType instanceof DuckDBType_1.DuckDBStructType) {\n return DuckDBStructVector.fromRawVector(vectorType, vector, itemCount);\n }\n throw new Error('DuckDBType has STRUCT type id but is not an instance of DuckDBStructType');\n case DuckDBTypeId_1.DuckDBTypeId.MAP:\n if (vectorType instanceof DuckDBType_1.DuckDBMapType) {\n return DuckDBMapVector.fromRawVector(vectorType, vector, itemCount);\n }\n throw new Error('DuckDBType has MAP type id but is not an instance of DuckDBMapType');\n case DuckDBTypeId_1.DuckDBTypeId.ARRAY:\n if (vectorType instanceof DuckDBType_1.DuckDBArrayType) {\n return DuckDBArrayVector.fromRawVector(vectorType, vector, itemCount);\n }\n throw new Error('DuckDBType has ARRAY type id but is not an instance of DuckDBArrayType');\n case DuckDBTypeId_1.DuckDBTypeId.UUID:\n return DuckDBUUIDVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.UNION:\n if (vectorType instanceof DuckDBType_1.DuckDBUnionType) {\n return DuckDBUnionVector.fromRawVector(vectorType, vector, itemCount);\n }\n throw new Error('DuckDBType has UNION type id but is not an instance of DuckDBUnionType');\n case DuckDBTypeId_1.DuckDBTypeId.BIT:\n return DuckDBBitVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TIME_TZ:\n return DuckDBTimeTZVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_TZ:\n return DuckDBTimestampTZVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.ANY:\n throw new Error(`Invalid vector type: ANY`);\n case DuckDBTypeId_1.DuckDBTypeId.BIGNUM:\n return DuckDBBigNumVector.fromRawVector(vector, itemCount);\n case DuckDBTypeId_1.DuckDBTypeId.SQLNULL:\n throw new Error(`Invalid vector type: SQLNULL`);\n case DuckDBTypeId_1.DuckDBTypeId.STRING_LITERAL:\n throw new Error(`Invalid vector type: STRING_LITERAL`);\n case DuckDBTypeId_1.DuckDBTypeId.INTEGER_LITERAL:\n throw new Error(`Invalid vector type: INTEGER_LITERAL`);\n case DuckDBTypeId_1.DuckDBTypeId.TIME_NS:\n return DuckDBTimeNSVector.fromRawVector(vector, itemCount);\n default:\n throw new Error(`Invalid type id: ${vectorType.typeId}`);\n }\n }\n toArray() {\n const items = [];\n for (let i = 0; i < this.itemCount; i++) {\n items.push(this.getItem(i));\n }\n return items;\n }\n}\nexports.DuckDBVector = DuckDBVector;\nclass DuckDBBooleanVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(dataView, validity, vector, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * node_bindings_1.default.sizeof_bool);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBBooleanVector(dataView, validity, vector, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBBooleanType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getBoolean(this.dataView, itemIndex * node_bindings_1.default.sizeof_bool)\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setBoolean(this.dataView, itemIndex * node_bindings_1.default.sizeof_bool, value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBBooleanVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * node_bindings_1.default.sizeof_bool, length * node_bindings_1.default.sizeof_bool), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBBooleanVector = DuckDBBooleanVector;\nclass DuckDBTinyIntVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Int8Array.BYTES_PER_ELEMENT);\n const items = new Int8Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTinyIntVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTinyIntType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTinyIntVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTinyIntVector = DuckDBTinyIntVector;\nclass DuckDBSmallIntVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Int16Array.BYTES_PER_ELEMENT);\n const items = new Int16Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBSmallIntVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBSmallIntType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBSmallIntVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBSmallIntVector = DuckDBSmallIntVector;\nclass DuckDBIntegerVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Int32Array.BYTES_PER_ELEMENT);\n const items = new Int32Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBIntegerVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBIntegerType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBIntegerVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBIntegerVector = DuckDBIntegerVector;\nclass DuckDBBigIntVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBBigIntVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBBigIntType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBBigIntVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBBigIntVector = DuckDBBigIntVector;\nclass DuckDBUTinyIntVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Uint8Array.BYTES_PER_ELEMENT);\n const items = new Uint8Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBUTinyIntVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBUTinyIntType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBUTinyIntVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBUTinyIntVector = DuckDBUTinyIntVector;\nclass DuckDBUSmallIntVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Uint16Array.BYTES_PER_ELEMENT);\n const items = new Uint16Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBUSmallIntVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBUSmallIntType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBUSmallIntVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBUSmallIntVector = DuckDBUSmallIntVector;\nclass DuckDBUIntegerVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Uint32Array.BYTES_PER_ELEMENT);\n const items = new Uint32Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBUIntegerVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBUIntegerType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBUIntegerVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBUIntegerVector = DuckDBUIntegerVector;\nclass DuckDBUBigIntVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigUint64Array.BYTES_PER_ELEMENT);\n const items = new BigUint64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBUBigIntVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBUBigIntType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBUBigIntVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBUBigIntVector = DuckDBUBigIntVector;\nclass DuckDBFloatVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Float32Array.BYTES_PER_ELEMENT);\n const items = new Float32Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBFloatVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBFloatType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBFloatVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBFloatVector = DuckDBFloatVector;\nclass DuckDBDoubleVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Float64Array.BYTES_PER_ELEMENT);\n const items = new Float64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBDoubleVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBDoubleType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex) ? this.items[itemIndex] : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBDoubleVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBDoubleVector = DuckDBDoubleVector;\nclass DuckDBTimestampVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimestampVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimestampType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimestampValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.micros;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimestampVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimestampVector = DuckDBTimestampVector;\nclass DuckDBDateVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * Int32Array.BYTES_PER_ELEMENT);\n const items = new Int32Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBDateVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBDateType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBDateValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.days;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBDateVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBDateVector = DuckDBDateVector;\nclass DuckDBTimeVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimeVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimeType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimeValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.micros;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimeVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimeVector = DuckDBTimeVector;\nclass DuckDBIntervalVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(dataView, validity, vector, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBIntervalVector(dataView, validity, vector, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBIntervalType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n const itemStart = itemIndex * 16;\n const months = getInt32(this.dataView, itemStart);\n const days = getInt32(this.dataView, itemStart + 4);\n const micros = getInt64(this.dataView, itemStart + 8);\n return new values_1.DuckDBIntervalValue(months, days, micros);\n }\n setItem(itemIndex, value) {\n if (value != null) {\n const itemStart = itemIndex * 16;\n setInt32(this.dataView, itemStart, value.months);\n setInt32(this.dataView, itemStart + 4, value.days);\n setInt64(this.dataView, itemStart + 8, value.micros);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBIntervalVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBIntervalVector = DuckDBIntervalVector;\nclass DuckDBHugeIntVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(dataView, validity, vector, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBHugeIntVector(dataView, validity, vector, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBHugeIntType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getInt128(this.dataView, itemIndex * 16)\n : null;\n }\n getDouble(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? node_bindings_1.default.hugeint_to_double(getInt128(this.dataView, itemIndex * 16))\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setInt128(this.dataView, itemIndex * 16, value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBHugeIntVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBHugeIntVector = DuckDBHugeIntVector;\nclass DuckDBUHugeIntVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(dataView, validity, vector, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBUHugeIntVector(dataView, validity, vector, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBUHugeIntType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getUInt128(this.dataView, itemIndex * 16)\n : null;\n }\n getDouble(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? node_bindings_1.default.uhugeint_to_double(getUInt128(this.dataView, itemIndex * 16))\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setUInt128(this.dataView, itemIndex * 16, value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBUHugeIntVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBUHugeIntVector = DuckDBUHugeIntVector;\nclass DuckDBVarCharVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n itemOffset;\n _itemCount;\n itemCache;\n itemCacheDirty;\n constructor(dataView, validity, vector, itemOffset, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this.itemOffset = itemOffset;\n this._itemCount = itemCount;\n this.itemCache = [];\n this.itemCacheDirty = [];\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBVarCharVector(dataView, validity, vector, 0, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBVarCharType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n const cachedItem = this.itemCache[itemIndex];\n if (cachedItem !== undefined) {\n return cachedItem;\n }\n const item = this.validity.itemValid(itemIndex)\n ? getString(this.dataView, itemIndex * 16)\n : null;\n this.itemCache[itemIndex] = item;\n return item;\n }\n setItem(itemIndex, value) {\n this.itemCache[itemIndex] = value;\n this.validity.setItemValid(itemIndex, value != null);\n this.itemCacheDirty[itemIndex] = true;\n }\n flush() {\n for (let itemIndex = 0; itemIndex < this._itemCount; itemIndex++) {\n if (this.itemCacheDirty[itemIndex]) {\n const cachedItem = this.itemCache[itemIndex];\n if (cachedItem !== undefined && cachedItem !== null) {\n node_bindings_1.default.vector_assign_string_element(this.vector, this.itemOffset + itemIndex, cachedItem);\n }\n this.itemCacheDirty[itemIndex] = false;\n }\n }\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBVarCharVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, offset, length);\n }\n}\nexports.DuckDBVarCharVector = DuckDBVarCharVector;\nclass DuckDBBlobVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n itemOffset;\n _itemCount;\n itemCache;\n itemCacheDirty;\n constructor(dataView, validity, vector, itemOffset, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this.itemOffset = itemOffset;\n this._itemCount = itemCount;\n this.itemCache = [];\n this.itemCacheDirty = [];\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBBlobVector(dataView, validity, vector, 0, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBBlobType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBBlobValue(getBuffer(this.dataView, itemIndex * 16))\n : null;\n }\n setItem(itemIndex, value) {\n this.itemCache[itemIndex] = value;\n this.validity.setItemValid(itemIndex, value != null);\n this.itemCacheDirty[itemIndex] = true;\n }\n flush() {\n for (let itemIndex = 0; itemIndex < this._itemCount; itemIndex++) {\n if (this.itemCacheDirty[itemIndex]) {\n const cachedItem = this.itemCache[itemIndex];\n if (cachedItem !== undefined && cachedItem !== null) {\n node_bindings_1.default.vector_assign_string_element_len(this.vector, this.itemOffset + itemIndex, cachedItem.bytes);\n }\n this.itemCacheDirty[itemIndex] = false;\n }\n }\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBBlobVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, offset, length);\n }\n}\nexports.DuckDBBlobVector = DuckDBBlobVector;\nclass DuckDBDecimal16Vector extends DuckDBVector {\n decimalType;\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(decimalType, dataView, validity, vector, itemCount) {\n super();\n this.decimalType = decimalType;\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(decimalType, vector, itemCount) {\n const data = vectorData(vector, itemCount * 2);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBDecimal16Vector(decimalType, dataView, validity, vector, itemCount);\n }\n get type() {\n return this.decimalType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getDecimal16(this.dataView, itemIndex * 2, this.decimalType)\n : null;\n }\n getScaledValue(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getInt16(this.dataView, itemIndex * 2)\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setInt16(this.dataView, itemIndex * 2, Number(value.value));\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBDecimal16Vector(this.decimalType, new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 2, length * 2), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBDecimal16Vector = DuckDBDecimal16Vector;\nclass DuckDBDecimal32Vector extends DuckDBVector {\n decimalType;\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(decimalType, dataView, validity, vector, itemCount) {\n super();\n this.decimalType = decimalType;\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(decimalType, vector, itemCount) {\n const data = vectorData(vector, itemCount * 4);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBDecimal32Vector(decimalType, dataView, validity, vector, itemCount);\n }\n get type() {\n return this.decimalType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getDecimal32(this.dataView, itemIndex * 4, this.decimalType)\n : null;\n }\n getScaledValue(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getInt32(this.dataView, itemIndex * 4)\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setInt32(this.dataView, itemIndex * 4, Number(value.value));\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBDecimal32Vector(this.decimalType, new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 4, length * 4), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBDecimal32Vector = DuckDBDecimal32Vector;\nclass DuckDBDecimal64Vector extends DuckDBVector {\n decimalType;\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(decimalType, dataView, validity, vector, itemCount) {\n super();\n this.decimalType = decimalType;\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(decimalType, vector, itemCount) {\n const data = vectorData(vector, itemCount * 8);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBDecimal64Vector(decimalType, dataView, validity, vector, itemCount);\n }\n get type() {\n return this.decimalType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getDecimal64(this.dataView, itemIndex * 8, this.decimalType)\n : null;\n }\n getScaledValue(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getInt64(this.dataView, itemIndex * 8)\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setInt64(this.dataView, itemIndex * 8, value.value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBDecimal64Vector(this.decimalType, new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 8, length * 8), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBDecimal64Vector = DuckDBDecimal64Vector;\nclass DuckDBDecimal128Vector extends DuckDBVector {\n decimalType;\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(decimalType, dataView, validity, vector, itemCount) {\n super();\n this.decimalType = decimalType;\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(decimalType, vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBDecimal128Vector(decimalType, dataView, validity, vector, itemCount);\n }\n get type() {\n return this.decimalType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getDecimal128(this.dataView, itemIndex * 16, this.decimalType)\n : null;\n }\n getScaledValue(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? getInt128(this.dataView, itemIndex * 16)\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setInt128(this.dataView, itemIndex * 16, value.value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBDecimal128Vector(this.decimalType, new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBDecimal128Vector = DuckDBDecimal128Vector;\nclass DuckDBTimestampSecondsVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimestampSecondsVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimestampSecondsType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimestampSecondsValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.seconds;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimestampSecondsVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimestampSecondsVector = DuckDBTimestampSecondsVector;\nclass DuckDBTimestampMillisecondsVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimestampMillisecondsVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimestampMillisecondsType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimestampMillisecondsValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.millis;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimestampMillisecondsVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimestampMillisecondsVector = DuckDBTimestampMillisecondsVector;\nclass DuckDBTimestampNanosecondsVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimestampNanosecondsVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimestampNanosecondsType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimestampNanosecondsValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.nanos;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimestampNanosecondsVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimestampNanosecondsVector = DuckDBTimestampNanosecondsVector;\nclass DuckDBEnum8Vector extends DuckDBVector {\n enumType;\n items;\n validity;\n vector;\n constructor(enumType, items, validity, vector) {\n super();\n this.enumType = enumType;\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(enumType, vector, itemCount) {\n const data = vectorData(vector, itemCount);\n const items = new Uint8Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBEnum8Vector(enumType, items, validity, vector);\n }\n get type() {\n return this.enumType;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? this.enumType.values[this.items[itemIndex]]\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = this.enumType.indexForValue(value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBEnum8Vector(this.enumType, this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBEnum8Vector = DuckDBEnum8Vector;\nclass DuckDBEnum16Vector extends DuckDBVector {\n enumType;\n items;\n validity;\n vector;\n constructor(enumType, items, validity, vector) {\n super();\n this.enumType = enumType;\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(enumType, vector, itemCount) {\n const data = vectorData(vector, itemCount * 2);\n const items = new Uint16Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBEnum16Vector(enumType, items, validity, vector);\n }\n get type() {\n return this.enumType;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? this.enumType.values[this.items[itemIndex]]\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = this.enumType.indexForValue(value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBEnum16Vector(this.enumType, this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBEnum16Vector = DuckDBEnum16Vector;\nclass DuckDBEnum32Vector extends DuckDBVector {\n enumType;\n items;\n validity;\n vector;\n constructor(enumType, items, validity, vector) {\n super();\n this.enumType = enumType;\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(enumType, vector, itemCount) {\n const data = vectorData(vector, itemCount * 4);\n const items = new Uint32Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBEnum32Vector(enumType, items, validity, vector);\n }\n get type() {\n return this.enumType;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? this.enumType.values[this.items[itemIndex]]\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = this.enumType.indexForValue(value);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBEnum32Vector(this.enumType, this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBEnum32Vector = DuckDBEnum32Vector;\nclass DuckDBListVector extends DuckDBVector {\n parentList;\n listType;\n entryData;\n validity;\n vector;\n childData;\n itemOffset;\n _itemCount;\n itemCache;\n constructor(parentList, listType, entryData, validity, vector, childData, itemOffset, itemCount) {\n super();\n this.parentList = parentList;\n this.listType = listType;\n this.entryData = entryData;\n this.validity = validity;\n this.vector = vector;\n this.childData = childData;\n this.itemOffset = itemOffset;\n this._itemCount = itemCount;\n this.itemCache = [];\n }\n static fromRawVector(listType, vector, itemCount) {\n const data = vectorData(vector, itemCount * BigUint64Array.BYTES_PER_ELEMENT * 2);\n const entryData = new BigUint64Array(data.buffer, data.byteOffset, itemCount * 2);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n const child_vector = node_bindings_1.default.list_vector_get_child(vector);\n const child_vector_size = node_bindings_1.default.list_vector_get_size(vector);\n const childData = DuckDBVector.create(child_vector, child_vector_size, listType.valueType);\n return new DuckDBListVector(null, listType, entryData, validity, vector, childData, 0, itemCount);\n }\n get type() {\n return this.listType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItemVector(itemIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n const entryDataStartIndex = itemIndex * 2;\n const offset = Number(this.entryData[entryDataStartIndex]);\n const length = Number(this.entryData[entryDataStartIndex + 1]);\n return this.childData.slice(offset, length);\n }\n getItem(itemIndex) {\n const cachedItem = this.itemCache[itemIndex];\n if (cachedItem !== undefined) {\n return cachedItem;\n }\n const vector = this.getItemVector(itemIndex);\n if (!vector) {\n return null;\n }\n const item = new values_1.DuckDBListValue(vector.toArray());\n this.itemCache[itemIndex] = item;\n return item;\n }\n setItem(itemIndex, value) {\n this.itemCache[itemIndex] = value;\n if (this.parentList) {\n this.parentList.setItem(this.itemOffset + itemIndex, value);\n }\n else {\n this.validity.setItemValid(itemIndex, value != null);\n }\n }\n flush() {\n if (this.parentList) {\n this.parentList.flush();\n for (let i = 0; i < this.itemCount; i++) {\n this.itemCache[i] = undefined;\n }\n }\n else {\n // update entryData offset & lengths\n // calculate new child vector size (sum of all item lengths)\n let totalLength = 0;\n for (let itemIndex = 0; itemIndex < this._itemCount; itemIndex++) {\n const entryDataStartIndex = itemIndex * 2;\n this.entryData[entryDataStartIndex] = BigInt(totalLength);\n // ensure the cache is populated for all items\n const item = this.getItem(itemIndex);\n if (item) {\n this.entryData[entryDataStartIndex + 1] = BigInt(item.items.length);\n totalLength += item.items.length;\n }\n else {\n this.entryData[entryDataStartIndex + 1] = 0n;\n }\n }\n // set new child vector size\n node_bindings_1.default.list_vector_set_size(this.vector, totalLength);\n // recreate childData after resize\n const child_vector = node_bindings_1.default.list_vector_get_child(this.vector);\n const child_vector_size = node_bindings_1.default.list_vector_get_size(this.vector);\n this.childData = DuckDBVector.create(child_vector, child_vector_size, this.listType.valueType);\n // set all childData items\n let childItemAbsoluteIndex = 0;\n for (let listIndex = 0; listIndex < this._itemCount; listIndex++) {\n const list = this.getItem(listIndex);\n if (list) {\n for (let childItemRelativeIndex = 0; childItemRelativeIndex < list.items.length; childItemRelativeIndex++) {\n this.childData.setItem(childItemAbsoluteIndex++, list.items[childItemRelativeIndex]);\n }\n }\n }\n // copy childData to child vector\n this.childData.flush();\n // copy entryData to vector\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.entryData.buffer, this.entryData.byteOffset, this.entryData.byteLength);\n // flush validity\n this.validity.flush(this.vector);\n }\n }\n slice(offset, length) {\n const entryDataStartIndex = offset * 2;\n return new DuckDBListVector(this, this.listType, this.entryData.slice(entryDataStartIndex, entryDataStartIndex + length * 2), this.validity.slice(offset, length), this.vector, this.childData, offset, length);\n }\n}\nexports.DuckDBListVector = DuckDBListVector;\nclass DuckDBStructVector extends DuckDBVector {\n structType;\n _itemCount;\n entryVectors;\n validity;\n vector;\n constructor(structType, itemCount, entryVectors, validity, vector) {\n super();\n this.structType = structType;\n this._itemCount = itemCount;\n this.entryVectors = entryVectors;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(structType, vector, itemCount) {\n const entryCount = structType.entryCount;\n const entryVectors = [];\n for (let i = 0; i < entryCount; i++) {\n const child_vector = node_bindings_1.default.struct_vector_get_child(vector, i);\n entryVectors.push(DuckDBVector.create(child_vector, itemCount, structType.entryTypes[i]));\n }\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBStructVector(structType, itemCount, entryVectors, validity, vector);\n }\n get type() {\n return this.structType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n const entries = {};\n const entryCount = this.structType.entryCount;\n for (let i = 0; i < entryCount; i++) {\n entries[this.structType.entryNames[i]] =\n this.entryVectors[i].getItem(itemIndex);\n }\n return new values_1.DuckDBStructValue(entries);\n }\n getItemValue(itemIndex, entryIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n return this.entryVectors[entryIndex].getItem(itemIndex);\n }\n setItem(itemIndex, value) {\n if (value != null) {\n const entryCount = this.structType.entryCount;\n for (let i = 0; i < entryCount; i++) {\n this.entryVectors[i].setItem(itemIndex, value.entries[this.structType.entryNames[i]]);\n }\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n const entryCount = this.structType.entryCount;\n for (let i = 0; i < entryCount; i++) {\n this.entryVectors[i].setItem(itemIndex, null);\n }\n this.validity.setItemValid(itemIndex, false);\n }\n }\n setItemValue(itemIndex, entryIndex, value) {\n return this.entryVectors[entryIndex].setItem(itemIndex, value);\n }\n flush() {\n for (const entryVector of this.entryVectors) {\n entryVector.flush();\n }\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBStructVector(this.structType, length, this.entryVectors.map((entryVector) => entryVector.slice(offset, length)), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBStructVector = DuckDBStructVector;\n// MAP = LIST(STRUCT(key KEY_TYPE, value VALUE_TYPE))\nclass DuckDBMapVector extends DuckDBVector {\n mapType;\n listVector;\n constructor(mapType, listVector) {\n super();\n this.mapType = mapType;\n this.listVector = listVector;\n }\n static fromRawVector(mapType, vector, itemCount) {\n const listVectorType = new DuckDBType_1.DuckDBListType(new DuckDBType_1.DuckDBStructType(['key', 'value'], [mapType.keyType, mapType.valueType]));\n return new DuckDBMapVector(mapType, DuckDBListVector.fromRawVector(listVectorType, vector, itemCount));\n }\n get type() {\n return this.mapType;\n }\n get itemCount() {\n return this.listVector.itemCount;\n }\n getItem(itemIndex) {\n const itemVector = this.listVector.getItemVector(itemIndex);\n if (!itemVector) {\n return null;\n }\n if (!(itemVector instanceof DuckDBStructVector)) {\n throw new Error('item in map list vector is not a struct');\n }\n const entries = [];\n const itemEntryCount = itemVector.itemCount;\n for (let i = 0; i < itemEntryCount; i++) {\n const key = itemVector.getItemValue(i, 0);\n const value = itemVector.getItemValue(i, 1);\n entries.push({ key, value });\n }\n return new values_1.DuckDBMapValue(entries);\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.listVector.setItem(itemIndex, (0, values_1.listValue)(value.entries.map((entry) => (0, values_1.structValue)({ 'key': entry.key, 'value': entry.value }))));\n }\n else {\n this.listVector.setItem(itemIndex, null);\n }\n }\n flush() {\n this.listVector.flush();\n }\n slice(offset, length) {\n return new DuckDBMapVector(this.mapType, this.listVector.slice(offset, length));\n }\n}\nexports.DuckDBMapVector = DuckDBMapVector;\nclass DuckDBArrayVector extends DuckDBVector {\n arrayType;\n validity;\n vector;\n childData;\n _itemCount;\n constructor(arrayType, validity, vector, childData, itemCount) {\n super();\n this.arrayType = arrayType;\n this.validity = validity;\n this.vector = vector;\n this.childData = childData;\n this._itemCount = itemCount;\n }\n static fromRawVector(arrayType, vector, itemCount) {\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n const child_vector = node_bindings_1.default.array_vector_get_child(vector);\n const childItemsPerArray = DuckDBArrayVector.itemSize(arrayType) * arrayType.length;\n const childData = DuckDBVector.create(child_vector, itemCount * childItemsPerArray, arrayType.valueType);\n return new DuckDBArrayVector(arrayType, validity, vector, childData, itemCount);\n }\n static itemSize(arrayType) {\n if (arrayType.valueType instanceof DuckDBType_1.DuckDBArrayType) {\n return DuckDBArrayVector.itemSize(arrayType.valueType);\n }\n else {\n return 1;\n }\n }\n get type() {\n return this.arrayType;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n return new values_1.DuckDBArrayValue(this.childData\n .slice(itemIndex * this.arrayType.length, this.arrayType.length)\n .toArray());\n }\n setItem(itemIndex, value) {\n if (value != null) {\n const startIndex = itemIndex * this.arrayType.length;\n for (let i = 0; i < this.arrayType.length; i++) {\n this.childData.setItem(startIndex + i, value.items[i]);\n }\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n const startIndex = itemIndex * this.arrayType.length;\n for (let i = 0; i < this.arrayType.length; i++) {\n this.childData.setItem(startIndex + i, null);\n }\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n this.childData.flush();\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBArrayVector(this.arrayType, this.validity.slice(offset, length), this.vector, this.childData.slice(offset * this.arrayType.length, length * this.arrayType.length), length);\n }\n}\nexports.DuckDBArrayVector = DuckDBArrayVector;\nclass DuckDBUUIDVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n _itemCount;\n constructor(dataView, validity, vector, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this._itemCount = itemCount;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBUUIDVector(dataView, validity, vector, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBUUIDType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? values_1.DuckDBUUIDValue.fromStoredHugeInt(getInt128(this.dataView, itemIndex * 16))\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n setInt128(this.dataView, itemIndex * 16, value.hugeint);\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.dataView.buffer, this.dataView.byteOffset, this.dataView.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBUUIDVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, length);\n }\n}\nexports.DuckDBUUIDVector = DuckDBUUIDVector;\n// UNION = STRUCT with first entry named \"tag\"\nclass DuckDBUnionVector extends DuckDBVector {\n unionType;\n structVector;\n constructor(unionType, structVector) {\n super();\n this.unionType = unionType;\n this.structVector = structVector;\n }\n static fromRawVector(unionType, vector, itemCount) {\n const entryNames = ['tag'];\n const entryTypes = [DuckDBType_1.DuckDBUTinyIntType.instance];\n const memberCount = unionType.memberCount;\n for (let i = 0; i < memberCount; i++) {\n entryNames.push(unionType.memberTags[i]);\n entryTypes.push(unionType.memberTypes[i]);\n }\n const structVectorType = new DuckDBType_1.DuckDBStructType(entryNames, entryTypes);\n return new DuckDBUnionVector(unionType, DuckDBStructVector.fromRawVector(structVectorType, vector, itemCount));\n }\n get type() {\n return this.unionType;\n }\n get itemCount() {\n return this.structVector.itemCount;\n }\n getItem(itemIndex) {\n const tagValue = this.structVector.getItemValue(itemIndex, 0);\n if (tagValue == null) {\n return null;\n }\n const memberIndex = Number(tagValue);\n const tag = this.unionType.memberTags[memberIndex];\n const entryIndex = memberIndex + 1;\n const value = this.structVector.getItemValue(itemIndex, entryIndex);\n return new values_1.DuckDBUnionValue(tag, value);\n }\n setItem(itemIndex, value) {\n if (value != null) {\n const memberIndex = this.unionType.memberIndexForTag(value.tag);\n this.structVector.setItemValue(itemIndex, 0, memberIndex);\n const entryIndex = memberIndex + 1;\n this.structVector.setItemValue(itemIndex, entryIndex, value.value);\n for (let i = 1; i <= this.unionType.memberCount; i++) {\n if (i !== entryIndex) {\n this.structVector.setItemValue(itemIndex, i, null);\n }\n }\n }\n else {\n for (let i = 0; i <= this.unionType.memberCount; i++) {\n this.structVector.setItemValue(itemIndex, i, null);\n }\n }\n }\n flush() {\n this.structVector.flush();\n }\n slice(offset, length) {\n return new DuckDBUnionVector(this.unionType, this.structVector.slice(offset, length));\n }\n}\nexports.DuckDBUnionVector = DuckDBUnionVector;\nclass DuckDBBitVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n itemOffset;\n _itemCount;\n itemCache;\n itemCacheDirty;\n constructor(dataView, validity, vector, itemOffset, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this.itemOffset = itemOffset;\n this._itemCount = itemCount;\n this.itemCache = [];\n this.itemCacheDirty = [];\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBBitVector(dataView, validity, vector, 0, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBBitType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n const bytes = getStringBytes(this.dataView, itemIndex * 16);\n return bytes ? new values_1.DuckDBBitValue(bytes) : null;\n }\n setItem(itemIndex, value) {\n this.itemCache[itemIndex] = value;\n this.validity.setItemValid(itemIndex, value != null);\n this.itemCacheDirty[itemIndex] = true;\n }\n flush() {\n for (let itemIndex = 0; itemIndex < this._itemCount; itemIndex++) {\n if (this.itemCacheDirty[itemIndex]) {\n const cachedItem = this.itemCache[itemIndex];\n if (cachedItem !== undefined && cachedItem !== null) {\n node_bindings_1.default.vector_assign_string_element_len(this.vector, this.itemOffset + itemIndex, cachedItem.data);\n }\n this.itemCacheDirty[itemIndex] = false;\n }\n }\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBBitVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, offset, length);\n }\n}\nexports.DuckDBBitVector = DuckDBBitVector;\nclass DuckDBTimeTZVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigUint64Array.BYTES_PER_ELEMENT);\n const items = new BigUint64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimeTZVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimeTZType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? values_1.DuckDBTimeTZValue.fromBits(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.bits;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimeTZVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimeTZVector = DuckDBTimeTZVector;\nclass DuckDBTimestampTZVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimestampTZVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimestampTZType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimestampTZValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.micros;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimestampTZVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimestampTZVector = DuckDBTimestampTZVector;\nclass DuckDBBigNumVector extends DuckDBVector {\n dataView;\n validity;\n vector;\n itemOffset;\n _itemCount;\n itemCache;\n itemCacheDirty;\n constructor(dataView, validity, vector, itemOffset, itemCount) {\n super();\n this.dataView = dataView;\n this.validity = validity;\n this.vector = vector;\n this.itemOffset = itemOffset;\n this._itemCount = itemCount;\n this.itemCache = [];\n this.itemCacheDirty = [];\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * 16);\n const dataView = new DataView(data.buffer, data.byteOffset, data.byteLength);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBBigNumVector(dataView, validity, vector, 0, itemCount);\n }\n get type() {\n return DuckDBType_1.DuckDBBigNumType.instance;\n }\n get itemCount() {\n return this._itemCount;\n }\n getItem(itemIndex) {\n if (!this.validity.itemValid(itemIndex)) {\n return null;\n }\n const bytes = getStringBytes(this.dataView, itemIndex * 16);\n return bytes ? getBigNumFromBytes(bytes) : null;\n }\n setItem(itemIndex, value) {\n this.itemCache[itemIndex] = value;\n this.validity.setItemValid(itemIndex, value != null);\n this.itemCacheDirty[itemIndex] = true;\n }\n flush() {\n for (let itemIndex = 0; itemIndex < this._itemCount; itemIndex++) {\n if (this.itemCacheDirty[itemIndex]) {\n const cachedItem = this.itemCache[itemIndex];\n if (cachedItem !== undefined && cachedItem !== null) {\n node_bindings_1.default.vector_assign_string_element_len(this.vector, this.itemOffset + itemIndex, getBytesFromBigNum(cachedItem));\n }\n this.itemCacheDirty[itemIndex] = false;\n }\n }\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBBigNumVector(new DataView(this.dataView.buffer, this.dataView.byteOffset + offset * 16, length * 16), this.validity.slice(offset, length), this.vector, offset, length);\n }\n}\nexports.DuckDBBigNumVector = DuckDBBigNumVector;\nclass DuckDBTimeNSVector extends DuckDBVector {\n items;\n validity;\n vector;\n constructor(items, validity, vector) {\n super();\n this.items = items;\n this.validity = validity;\n this.vector = vector;\n }\n static fromRawVector(vector, itemCount) {\n const data = vectorData(vector, itemCount * BigInt64Array.BYTES_PER_ELEMENT);\n const items = new BigInt64Array(data.buffer, data.byteOffset, itemCount);\n const validity = DuckDBValidity.fromVector(vector, itemCount);\n return new DuckDBTimeNSVector(items, validity, vector);\n }\n get type() {\n return DuckDBType_1.DuckDBTimeNSType.instance;\n }\n get itemCount() {\n return this.items.length;\n }\n getItem(itemIndex) {\n return this.validity.itemValid(itemIndex)\n ? new values_1.DuckDBTimeNSValue(this.items[itemIndex])\n : null;\n }\n setItem(itemIndex, value) {\n if (value != null) {\n this.items[itemIndex] = value.nanos;\n this.validity.setItemValid(itemIndex, true);\n }\n else {\n this.validity.setItemValid(itemIndex, false);\n }\n }\n flush() {\n node_bindings_1.default.copy_data_to_vector(this.vector, 0, this.items.buffer, this.items.byteOffset, this.items.byteLength);\n this.validity.flush(this.vector);\n }\n slice(offset, length) {\n return new DuckDBTimeNSVector(this.items.slice(offset, offset + length), this.validity.slice(offset, length), this.vector);\n }\n}\nexports.DuckDBTimeNSVector = DuckDBTimeNSVector;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBDataChunk = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBVector_1 = require(\"./DuckDBVector\");\nclass DuckDBDataChunk {\n chunk;\n vectors = [];\n constructor(chunk) {\n this.chunk = chunk;\n }\n static create(types, rowCount) {\n const chunk = new DuckDBDataChunk(node_bindings_1.default.create_data_chunk(types.map((t) => t.toLogicalType().logical_type)));\n if (rowCount != undefined) {\n chunk.rowCount = rowCount;\n }\n return chunk;\n }\n reset() {\n node_bindings_1.default.data_chunk_reset(this.chunk);\n }\n get columnCount() {\n return node_bindings_1.default.data_chunk_get_column_count(this.chunk);\n }\n get rowCount() {\n return node_bindings_1.default.data_chunk_get_size(this.chunk);\n }\n set rowCount(count) {\n const maxRowCount = node_bindings_1.default.vector_size();\n if (count > maxRowCount) {\n throw new Error(`A data chunk cannot have more than ${maxRowCount} rows`);\n }\n node_bindings_1.default.data_chunk_set_size(this.chunk, count);\n }\n getColumnVector(columnIndex) {\n if (this.vectors[columnIndex]) {\n return this.vectors[columnIndex];\n }\n const vector = DuckDBVector_1.DuckDBVector.create(node_bindings_1.default.data_chunk_get_vector(this.chunk, columnIndex), this.rowCount);\n this.vectors[columnIndex] = vector;\n return vector;\n }\n visitColumnValues(columnIndex, visitValue) {\n const vector = this.getColumnVector(columnIndex);\n const type = vector.type;\n for (let rowIndex = 0; rowIndex < vector.itemCount; rowIndex++) {\n visitValue(vector.getItem(rowIndex), rowIndex, columnIndex, type);\n }\n }\n appendColumnValues(columnIndex, values) {\n this.visitColumnValues(columnIndex, (value) => values.push(value));\n }\n getColumnValues(columnIndex) {\n const values = [];\n this.appendColumnValues(columnIndex, values);\n return values;\n }\n convertColumnValues(columnIndex, converter) {\n const convertedValues = [];\n this.visitColumnValues(columnIndex, (value, _r, _c, type) => convertedValues.push(converter(value, type, converter)));\n return convertedValues;\n }\n setColumnValues(columnIndex, values) {\n const vector = this.getColumnVector(columnIndex);\n if (vector.itemCount !== values.length) {\n throw new Error(`number of values must equal chunk row count`);\n }\n for (let i = 0; i < values.length; i++) {\n vector.setItem(i, values[i]);\n }\n vector.flush();\n }\n visitColumns(visitColumn) {\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n visitColumn(this.getColumnValues(columnIndex), columnIndex, this.getColumnVector(columnIndex).type);\n }\n }\n appendToColumns(columns) {\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n let column = columns[columnIndex];\n if (!column) {\n column = [];\n columns[columnIndex] = column;\n }\n this.appendColumnValues(columnIndex, column);\n }\n }\n getColumns() {\n const columns = [];\n this.visitColumns((column) => columns.push(column));\n return columns;\n }\n convertColumns(converter) {\n const convertedColumns = [];\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n convertedColumns.push(this.convertColumnValues(columnIndex, converter));\n }\n return convertedColumns;\n }\n setColumns(columns) {\n if (columns.length > 0) {\n this.rowCount = columns[0].length;\n }\n for (let columnIndex = 0; columnIndex < columns.length; columnIndex++) {\n this.setColumnValues(columnIndex, columns[columnIndex]);\n }\n }\n appendToColumnsObject(columnNames, columnsObject) {\n const columnCount = this.columnCount;\n if (columnNames.length !== columnCount) {\n throw new Error(`Provided number of column names (${columnNames.length}) does not match column count (${this.columnCount})`);\n }\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n const columnName = columnNames[columnIndex];\n let columnValues = columnsObject[columnName];\n if (!columnValues) {\n columnValues = [];\n columnsObject[columnName] = columnValues;\n }\n this.appendColumnValues(columnIndex, columnValues);\n }\n }\n getColumnsObject(columnNames) {\n const columnsObject = {};\n this.appendToColumnsObject(columnNames, columnsObject);\n return columnsObject;\n }\n visitColumnMajor(visitValue) {\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n this.visitColumnValues(columnIndex, visitValue);\n }\n }\n visitRowValues(rowIndex, visitValue) {\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n const vector = this.getColumnVector(columnIndex);\n visitValue(vector.getItem(rowIndex), rowIndex, columnIndex, vector.type);\n }\n }\n appendRowValues(rowIndex, values) {\n this.visitRowValues(rowIndex, (value) => values.push(value));\n }\n getRowValues(rowIndex) {\n const values = [];\n this.appendRowValues(rowIndex, values);\n return values;\n }\n convertRowValues(rowIndex, converter) {\n const convertedValues = [];\n this.visitRowValues(rowIndex, (value, _, columnIndex) => convertedValues.push(converter(value, this.getColumnVector(columnIndex).type, converter)));\n return convertedValues;\n }\n visitRows(visitRow) {\n const rowCount = this.rowCount;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n visitRow(this.getRowValues(rowIndex), rowIndex);\n }\n }\n appendToRows(rows) {\n this.visitRows((row) => rows.push(row));\n }\n getRows() {\n const rows = [];\n this.appendToRows(rows);\n return rows;\n }\n convertRows(converter) {\n const convertedRows = [];\n const rowCount = this.rowCount;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n convertedRows.push(this.convertRowValues(rowIndex, converter));\n }\n return convertedRows;\n }\n setRows(rows) {\n this.rowCount = rows.length;\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n const vector = this.getColumnVector(columnIndex);\n for (let rowIndex = 0; rowIndex < rows.length; rowIndex++) {\n vector.setItem(rowIndex, rows[rowIndex][columnIndex]);\n }\n vector.flush();\n }\n }\n appendToRowObjects(columnNames, rowObjects) {\n const columnCount = this.columnCount;\n if (columnNames.length !== columnCount) {\n throw new Error(`Provided number of column names (${columnNames.length}) does not match column count (${this.columnCount})`);\n }\n const rowCount = this.rowCount;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n let rowObject = {};\n this.visitRowValues(rowIndex, (value, _, columnIndex) => {\n rowObject[columnNames[columnIndex]] = value;\n });\n rowObjects.push(rowObject);\n }\n }\n getRowObjects(columnNames) {\n const rowObjects = [];\n this.appendToRowObjects(columnNames, rowObjects);\n return rowObjects;\n }\n visitRowMajor(visitValue) {\n const rowCount = this.rowCount;\n const columnCount = this.columnCount;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n const vector = this.getColumnVector(columnIndex);\n visitValue(vector.getItem(rowIndex), rowIndex, columnIndex, vector.type);\n }\n }\n }\n}\nexports.DuckDBDataChunk = DuckDBDataChunk;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.unsupportedConverter = unsupportedConverter;\nexports.nullConverter = nullConverter;\nexports.booleanFromValue = booleanFromValue;\nexports.numberFromValue = numberFromValue;\nexports.jsonNumberFromValue = jsonNumberFromValue;\nexports.bigintFromBigIntValue = bigintFromBigIntValue;\nexports.stringFromValue = stringFromValue;\nexports.bytesFromBlobValue = bytesFromBlobValue;\nexports.bytesFromBitValue = bytesFromBitValue;\nexports.dateFromDateValue = dateFromDateValue;\nexports.bigintFromTimeValue = bigintFromTimeValue;\nexports.dateFromTimestampValue = dateFromTimestampValue;\nexports.dateFromTimestampSecondsValue = dateFromTimestampSecondsValue;\nexports.dateFromTimestampMillisecondsValue = dateFromTimestampMillisecondsValue;\nexports.dateFromTimestampNanosecondsValue = dateFromTimestampNanosecondsValue;\nexports.objectFromTimeTZValue = objectFromTimeTZValue;\nexports.dateFromTimestampTZValue = dateFromTimestampTZValue;\nexports.objectFromIntervalValue = objectFromIntervalValue;\nexports.jsonObjectFromIntervalValue = jsonObjectFromIntervalValue;\nexports.doubleFromDecimalValue = doubleFromDecimalValue;\nexports.arrayFromListValue = arrayFromListValue;\nexports.objectFromStructValue = objectFromStructValue;\nexports.objectArrayFromMapValue = objectArrayFromMapValue;\nexports.arrayFromArrayValue = arrayFromArrayValue;\nexports.objectFromUnionValue = objectFromUnionValue;\nconst DuckDBType_1 = require(\"./DuckDBType\");\nconst values_1 = require(\"./values\");\nconst MIN_DATE_DAYS = -100000000;\nconst MAX_DATE_DAYS = 100000000;\n// -8640000000000\nconst MIN_DATE_MILLIS = -8640000000000000;\nconst MAX_DATE_MILLIS = 8640000000000000;\nconst MILLS_PER_DAY = 24 * 60 * 60 * 1000;\nfunction unsupportedConverter(_, type) {\n throw new Error(`Unsupported type: ${type}`);\n}\nfunction nullConverter(_) {\n return null;\n}\nfunction booleanFromValue(value) {\n return Boolean(value);\n}\nfunction numberFromValue(value) {\n return Number(value);\n}\nfunction jsonNumberFromValue(value) {\n if (Number.isFinite(value)) {\n return Number(value);\n }\n return String(value);\n}\nfunction bigintFromBigIntValue(value, type) {\n if (typeof value === 'bigint') {\n return value;\n }\n throw new Error(`Expected bigint value for type ${type}`);\n}\nfunction stringFromValue(value) {\n return String(value);\n}\nfunction bytesFromBlobValue(value) {\n if (value instanceof values_1.DuckDBBlobValue) {\n return value.bytes;\n }\n throw new Error(`Expected DuckDBBlobValue`);\n}\nfunction bytesFromBitValue(value) {\n if (value instanceof values_1.DuckDBBitValue) {\n return value.data;\n }\n throw new Error(`Expected DuckDBBitValue`);\n}\nfunction dateFromDateValue(value) {\n if (value instanceof values_1.DuckDBDateValue) {\n if (MIN_DATE_DAYS <= value.days && value.days <= MAX_DATE_DAYS) {\n return new Date(value.days * MILLS_PER_DAY);\n }\n throw new Error(`DATE value out of range for JS Date: ${value.days} days`);\n }\n throw new Error(`Expected DuckDBDateValue`);\n}\nfunction bigintFromTimeValue(value) {\n if (value instanceof values_1.DuckDBTimeValue) {\n return value.micros;\n }\n throw new Error(`Expected DuckDBTimeValue`);\n}\nfunction dateFromTimestampValue(value) {\n if (value instanceof values_1.DuckDBTimestampValue) {\n const millis = value.micros / 1000n;\n if (MIN_DATE_MILLIS <= millis && millis <= MAX_DATE_MILLIS) {\n return new Date(Number(millis));\n }\n throw new Error(`TIMESTAMP value out of range for JS Date: ${value.micros} micros`);\n }\n throw new Error(`Expected DuckDBTimestampValue`);\n}\nfunction dateFromTimestampSecondsValue(value) {\n if (value instanceof values_1.DuckDBTimestampSecondsValue) {\n const millis = value.seconds * 1000n;\n if (MIN_DATE_MILLIS <= millis && millis <= MAX_DATE_MILLIS) {\n return new Date(Number(millis));\n }\n throw new Error(`TIMESTAMP_S value out of range for JS Date: ${value.seconds} seconds`);\n }\n throw new Error(`Expected DuckDBTimestampSecondsValue`);\n}\nfunction dateFromTimestampMillisecondsValue(value) {\n if (value instanceof values_1.DuckDBTimestampMillisecondsValue) {\n const millis = value.millis;\n if (MIN_DATE_MILLIS <= millis && millis <= MAX_DATE_MILLIS) {\n return new Date(Number(millis));\n }\n throw new Error(`TIMESTAMP_MS value out of range for JS Date: ${value.millis} millis`);\n }\n throw new Error(`Expected DuckDBTimestampMillisecondsValue`);\n}\nfunction dateFromTimestampNanosecondsValue(value) {\n if (value instanceof values_1.DuckDBTimestampNanosecondsValue) {\n const millis = value.nanos / 1000000n;\n if (MIN_DATE_MILLIS <= millis && millis <= MAX_DATE_MILLIS) {\n return new Date(Number(millis));\n }\n throw new Error(`TIMESTAMP_NS value out of range for JS Date: ${value.nanos} nanos`);\n }\n throw new Error(`Expected DuckDBTimestampNanosecondsValue`);\n}\nfunction objectFromTimeTZValue(value) {\n if (value instanceof values_1.DuckDBTimeTZValue) {\n return {\n micros: value.micros,\n offset: value.offset,\n };\n }\n throw new Error(`Expected DuckDBTimeTZValue`);\n}\nfunction dateFromTimestampTZValue(value) {\n if (value instanceof values_1.DuckDBTimestampTZValue) {\n const millis = value.micros / 1000n;\n if (MIN_DATE_MILLIS <= millis && millis <= MAX_DATE_MILLIS) {\n return new Date(Number(millis));\n }\n throw new Error(`TIMESTAMPTZ value out of range for JS Date: ${value.micros} micros`);\n }\n throw new Error(`Expected DuckDBTimestampTZValue`);\n}\nfunction objectFromIntervalValue(value) {\n if (value instanceof values_1.DuckDBIntervalValue) {\n return {\n months: value.months,\n days: value.days,\n micros: value.micros,\n };\n }\n throw new Error(`Expected DuckDBIntervalValue`);\n}\nfunction jsonObjectFromIntervalValue(value) {\n if (value instanceof values_1.DuckDBIntervalValue) {\n return {\n months: value.months,\n days: value.days,\n micros: String(value.micros),\n };\n }\n throw new Error(`Expected DuckDBIntervalValue`);\n}\nfunction doubleFromDecimalValue(value) {\n if (value instanceof values_1.DuckDBDecimalValue) {\n return value.toDouble();\n }\n throw new Error(`Expected DuckDBDecimalValue`);\n}\nfunction arrayFromListValue(value, type, converter) {\n if (value instanceof values_1.DuckDBListValue && type instanceof DuckDBType_1.DuckDBListType) {\n return value.items.map((v) => converter(v, type.valueType, converter));\n }\n throw new Error(`Expected DuckDBListValue and DuckDBListType`);\n}\nfunction objectFromStructValue(value, type, converter) {\n if (value instanceof values_1.DuckDBStructValue && type instanceof DuckDBType_1.DuckDBStructType) {\n const result = {};\n for (const key in value.entries) {\n result[key] = converter(value.entries[key], type.typeForEntry(key), converter);\n }\n return result;\n }\n throw new Error(`Expected DuckDBStructValue and DuckDBStructType`);\n}\nfunction objectArrayFromMapValue(value, type, converter) {\n if (value instanceof values_1.DuckDBMapValue && type instanceof DuckDBType_1.DuckDBMapType) {\n return value.entries.map((entry) => ({\n key: converter(entry.key, type.keyType, converter),\n value: converter(entry.value, type.valueType, converter),\n }));\n }\n throw new Error(`Expected DuckDBMapValue and DuckDBMapType`);\n}\nfunction arrayFromArrayValue(value, type, converter) {\n if (value instanceof values_1.DuckDBArrayValue && type instanceof DuckDBType_1.DuckDBArrayType) {\n return value.items.map((v) => converter(v, type.valueType, converter));\n }\n throw new Error(`Expected DuckDBArrayValue and DuckDBArrayType`);\n}\nfunction objectFromUnionValue(value, type, converter) {\n if (value instanceof values_1.DuckDBUnionValue && type instanceof DuckDBType_1.DuckDBUnionType) {\n return {\n tag: value.tag,\n value: converter(value.value, type.memberTypeForTag(value.tag), converter),\n };\n }\n throw new Error(`Expected DuckDBUnionValue and DuckDBUnionType`);\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.JSDuckDBValueConverter = void 0;\nconst createDuckDBValueConverter_1 = require(\"./createDuckDBValueConverter\");\nconst DuckDBTypeId_1 = require(\"./DuckDBTypeId\");\nconst DuckDBValueConverters_1 = require(\"./DuckDBValueConverters\");\nconst JSConvertersByTypeId = {\n [DuckDBTypeId_1.DuckDBTypeId.INVALID]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.BOOLEAN]: DuckDBValueConverters_1.booleanFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TINYINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.SMALLINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.INTEGER]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.BIGINT]: DuckDBValueConverters_1.bigintFromBigIntValue,\n [DuckDBTypeId_1.DuckDBTypeId.UTINYINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.USMALLINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UINTEGER]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UBIGINT]: DuckDBValueConverters_1.bigintFromBigIntValue,\n [DuckDBTypeId_1.DuckDBTypeId.FLOAT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.DOUBLE]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP]: DuckDBValueConverters_1.dateFromTimestampValue,\n [DuckDBTypeId_1.DuckDBTypeId.DATE]: DuckDBValueConverters_1.dateFromDateValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIME]: DuckDBValueConverters_1.bigintFromTimeValue,\n [DuckDBTypeId_1.DuckDBTypeId.INTERVAL]: DuckDBValueConverters_1.objectFromIntervalValue,\n [DuckDBTypeId_1.DuckDBTypeId.HUGEINT]: DuckDBValueConverters_1.bigintFromBigIntValue,\n [DuckDBTypeId_1.DuckDBTypeId.UHUGEINT]: DuckDBValueConverters_1.bigintFromBigIntValue,\n [DuckDBTypeId_1.DuckDBTypeId.VARCHAR]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.BLOB]: DuckDBValueConverters_1.bytesFromBlobValue,\n [DuckDBTypeId_1.DuckDBTypeId.DECIMAL]: DuckDBValueConverters_1.doubleFromDecimalValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_S]: DuckDBValueConverters_1.dateFromTimestampSecondsValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_MS]: DuckDBValueConverters_1.dateFromTimestampMillisecondsValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_NS]: DuckDBValueConverters_1.dateFromTimestampNanosecondsValue,\n [DuckDBTypeId_1.DuckDBTypeId.ENUM]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.LIST]: DuckDBValueConverters_1.arrayFromListValue,\n [DuckDBTypeId_1.DuckDBTypeId.STRUCT]: DuckDBValueConverters_1.objectFromStructValue,\n [DuckDBTypeId_1.DuckDBTypeId.MAP]: DuckDBValueConverters_1.objectArrayFromMapValue,\n [DuckDBTypeId_1.DuckDBTypeId.ARRAY]: DuckDBValueConverters_1.arrayFromArrayValue,\n [DuckDBTypeId_1.DuckDBTypeId.UUID]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UNION]: DuckDBValueConverters_1.objectFromUnionValue,\n [DuckDBTypeId_1.DuckDBTypeId.BIT]: DuckDBValueConverters_1.bytesFromBitValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIME_TZ]: DuckDBValueConverters_1.objectFromTimeTZValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_TZ]: DuckDBValueConverters_1.dateFromTimestampTZValue,\n [DuckDBTypeId_1.DuckDBTypeId.ANY]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.BIGNUM]: DuckDBValueConverters_1.bigintFromBigIntValue,\n [DuckDBTypeId_1.DuckDBTypeId.SQLNULL]: DuckDBValueConverters_1.nullConverter,\n [DuckDBTypeId_1.DuckDBTypeId.STRING_LITERAL]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.INTEGER_LITERAL]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.TIME_NS]: DuckDBValueConverters_1.bigintFromTimeValue,\n};\nexports.JSDuckDBValueConverter = (0, createDuckDBValueConverter_1.createDuckDBValueConverter)(JSConvertersByTypeId);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.JsonDuckDBValueConverter = void 0;\nconst createDuckDBValueConverter_1 = require(\"./createDuckDBValueConverter\");\nconst DuckDBTypeId_1 = require(\"./DuckDBTypeId\");\nconst DuckDBValueConverters_1 = require(\"./DuckDBValueConverters\");\nconst JsonConvertersByTypeId = {\n [DuckDBTypeId_1.DuckDBTypeId.INVALID]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.BOOLEAN]: DuckDBValueConverters_1.booleanFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TINYINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.SMALLINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.INTEGER]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.BIGINT]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UTINYINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.USMALLINT]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UINTEGER]: DuckDBValueConverters_1.numberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UBIGINT]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.FLOAT]: DuckDBValueConverters_1.jsonNumberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.DOUBLE]: DuckDBValueConverters_1.jsonNumberFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.DATE]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIME]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.INTERVAL]: DuckDBValueConverters_1.jsonObjectFromIntervalValue,\n [DuckDBTypeId_1.DuckDBTypeId.HUGEINT]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UHUGEINT]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.VARCHAR]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.BLOB]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.DECIMAL]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_S]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_MS]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_NS]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.ENUM]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.LIST]: DuckDBValueConverters_1.arrayFromListValue,\n [DuckDBTypeId_1.DuckDBTypeId.STRUCT]: DuckDBValueConverters_1.objectFromStructValue,\n [DuckDBTypeId_1.DuckDBTypeId.MAP]: DuckDBValueConverters_1.objectArrayFromMapValue,\n [DuckDBTypeId_1.DuckDBTypeId.ARRAY]: DuckDBValueConverters_1.arrayFromArrayValue,\n [DuckDBTypeId_1.DuckDBTypeId.UUID]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.UNION]: DuckDBValueConverters_1.objectFromUnionValue,\n [DuckDBTypeId_1.DuckDBTypeId.BIT]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIME_TZ]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.TIMESTAMP_TZ]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.ANY]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.BIGNUM]: DuckDBValueConverters_1.stringFromValue,\n [DuckDBTypeId_1.DuckDBTypeId.SQLNULL]: DuckDBValueConverters_1.nullConverter,\n [DuckDBTypeId_1.DuckDBTypeId.STRING_LITERAL]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.INTEGER_LITERAL]: DuckDBValueConverters_1.unsupportedConverter,\n [DuckDBTypeId_1.DuckDBTypeId.TIME_NS]: DuckDBValueConverters_1.stringFromValue,\n};\nexports.JsonDuckDBValueConverter = (0, createDuckDBValueConverter_1.createDuckDBValueConverter)(JsonConvertersByTypeId);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.convertColumnsFromChunks = convertColumnsFromChunks;\nfunction convertColumnsFromChunks(chunks, converter) {\n if (chunks.length === 0) {\n return [];\n }\n const convertedColumns = chunks[0].convertColumns(converter);\n for (let chunkIndex = 1; chunkIndex < chunks.length; chunkIndex++) {\n for (let columnIndex = 0; columnIndex < convertedColumns.length; columnIndex++) {\n const chunk = chunks[chunkIndex];\n chunk.visitColumnValues(columnIndex, (value, _rowIndex, _columnIndex, type) => convertedColumns[columnIndex].push(converter(value, type, converter)));\n }\n }\n return convertedColumns;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.convertColumnsObjectFromChunks = convertColumnsObjectFromChunks;\nfunction convertColumnsObjectFromChunks(chunks, columnNames, converter) {\n const convertedColumnsObject = {};\n for (const columnName of columnNames) {\n convertedColumnsObject[columnName] = [];\n }\n if (chunks.length === 0) {\n return convertedColumnsObject;\n }\n const columnCount = chunks[0].columnCount;\n for (let chunkIndex = 0; chunkIndex < chunks.length; chunkIndex++) {\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n chunks[chunkIndex].visitColumnValues(columnIndex, (value, _rowIndex, _columnIndex, type) => convertedColumnsObject[columnNames[columnIndex]].push(converter(value, type, converter)));\n }\n }\n return convertedColumnsObject;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.convertRowObjectsFromChunks = convertRowObjectsFromChunks;\nfunction convertRowObjectsFromChunks(chunks, columnNames, converter) {\n const rowObjects = [];\n for (const chunk of chunks) {\n const rowCount = chunk.rowCount;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n const rowObject = {};\n chunk.visitRowValues(rowIndex, (value, _rowIndex, columnIndex, type) => {\n rowObject[columnNames[columnIndex]] = converter(value, type, converter);\n });\n rowObjects.push(rowObject);\n }\n }\n return rowObjects;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.convertRowsFromChunks = convertRowsFromChunks;\nfunction convertRowsFromChunks(chunks, converter) {\n const rows = [];\n for (const chunk of chunks) {\n const rowCount = chunk.rowCount;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n rows.push(chunk.convertRowValues(rowIndex, converter));\n }\n }\n return rows;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getColumnsFromChunks = getColumnsFromChunks;\nfunction getColumnsFromChunks(chunks) {\n const columns = [];\n for (const chunk of chunks) {\n chunk.appendToColumns(columns);\n }\n return columns;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getColumnsObjectFromChunks = getColumnsObjectFromChunks;\nfunction getColumnsObjectFromChunks(chunks, columnNames) {\n const columnsObject = {};\n for (const chunk of chunks) {\n chunk.appendToColumnsObject(columnNames, columnsObject);\n }\n return columnsObject;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRowObjectsFromChunks = getRowObjectsFromChunks;\nfunction getRowObjectsFromChunks(chunks, columnNames) {\n const rowObjects = [];\n for (const chunk of chunks) {\n chunk.appendToRowObjects(columnNames, rowObjects);\n }\n return rowObjects;\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRowsFromChunks = getRowsFromChunks;\nfunction getRowsFromChunks(chunks) {\n const rows = [];\n for (const chunk of chunks) {\n chunk.appendToRows(rows);\n }\n return rows;\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBResult = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBDataChunk_1 = require(\"./DuckDBDataChunk\");\nconst DuckDBLogicalType_1 = require(\"./DuckDBLogicalType\");\nconst JSDuckDBValueConverter_1 = require(\"./JSDuckDBValueConverter\");\nconst JsonDuckDBValueConverter_1 = require(\"./JsonDuckDBValueConverter\");\nconst convertColumnsFromChunks_1 = require(\"./convertColumnsFromChunks\");\nconst convertColumnsObjectFromChunks_1 = require(\"./convertColumnsObjectFromChunks\");\nconst convertRowObjectsFromChunks_1 = require(\"./convertRowObjectsFromChunks\");\nconst convertRowsFromChunks_1 = require(\"./convertRowsFromChunks\");\nconst getColumnsFromChunks_1 = require(\"./getColumnsFromChunks\");\nconst getColumnsObjectFromChunks_1 = require(\"./getColumnsObjectFromChunks\");\nconst getRowObjectsFromChunks_1 = require(\"./getRowObjectsFromChunks\");\nconst getRowsFromChunks_1 = require(\"./getRowsFromChunks\");\nclass DuckDBResult {\n result;\n constructor(result) {\n this.result = result;\n }\n get returnType() {\n return node_bindings_1.default.result_return_type(this.result);\n }\n get statementType() {\n return node_bindings_1.default.result_statement_type(this.result);\n }\n get columnCount() {\n return node_bindings_1.default.column_count(this.result);\n }\n columnName(columnIndex) {\n return node_bindings_1.default.column_name(this.result, columnIndex);\n }\n columnNames() {\n const columnNames = [];\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n columnNames.push(this.columnName(columnIndex));\n }\n return columnNames;\n }\n deduplicatedColumnNames() {\n const outputColumnNames = [];\n const columnCount = this.columnCount;\n const columnNameCount = {};\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n const inputColumnName = this.columnName(columnIndex);\n const nameCount = (columnNameCount[inputColumnName] || 0) + 1;\n columnNameCount[inputColumnName] = nameCount;\n if (nameCount > 1) {\n outputColumnNames.push(`${inputColumnName}:${nameCount - 1}`);\n }\n else {\n outputColumnNames.push(inputColumnName);\n }\n }\n return outputColumnNames;\n }\n columnTypeId(columnIndex) {\n return node_bindings_1.default.column_type(this.result, columnIndex);\n }\n columnLogicalType(columnIndex) {\n return DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.column_logical_type(this.result, columnIndex));\n }\n columnType(columnIndex) {\n return DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.column_logical_type(this.result, columnIndex)).asType();\n }\n columnTypeJson(columnIndex) {\n return this.columnType(columnIndex).toJson();\n }\n columnTypes() {\n const columnTypes = [];\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n columnTypes.push(this.columnType(columnIndex));\n }\n return columnTypes;\n }\n columnTypesJson() {\n const columnTypesJson = [];\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n columnTypesJson.push(this.columnTypeJson(columnIndex));\n }\n return columnTypesJson;\n }\n columnNamesAndTypesJson() {\n return {\n columnNames: this.columnNames(),\n columnTypes: this.columnTypesJson(),\n };\n }\n columnNameAndTypeObjectsJson() {\n const columnNameAndTypeObjects = [];\n const columnCount = this.columnCount;\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n columnNameAndTypeObjects.push({\n columnName: this.columnName(columnIndex),\n columnType: this.columnTypeJson(columnIndex),\n });\n }\n return columnNameAndTypeObjects;\n }\n get isStreaming() {\n return node_bindings_1.default.result_is_streaming(this.result);\n }\n get rowsChanged() {\n return node_bindings_1.default.rows_changed(this.result);\n }\n async fetchChunk() {\n const chunk = await node_bindings_1.default.fetch_chunk(this.result);\n return chunk ? new DuckDBDataChunk_1.DuckDBDataChunk(chunk) : null;\n }\n async fetchAllChunks() {\n const chunks = [];\n while (true) {\n const chunk = await this.fetchChunk();\n if (!chunk || chunk.rowCount === 0) {\n return chunks;\n }\n chunks.push(chunk);\n }\n }\n async getColumns() {\n const chunks = await this.fetchAllChunks();\n return (0, getColumnsFromChunks_1.getColumnsFromChunks)(chunks);\n }\n async convertColumns(converter) {\n const chunks = await this.fetchAllChunks();\n return (0, convertColumnsFromChunks_1.convertColumnsFromChunks)(chunks, converter);\n }\n async getColumnsJS() {\n return this.convertColumns(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n async getColumnsJson() {\n return this.convertColumns(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n async getColumnsObject() {\n const chunks = await this.fetchAllChunks();\n return (0, getColumnsObjectFromChunks_1.getColumnsObjectFromChunks)(chunks, this.deduplicatedColumnNames());\n }\n async convertColumnsObject(converter) {\n const chunks = await this.fetchAllChunks();\n return (0, convertColumnsObjectFromChunks_1.convertColumnsObjectFromChunks)(chunks, this.deduplicatedColumnNames(), converter);\n }\n async getColumnsObjectJS() {\n return this.convertColumnsObject(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n async getColumnsObjectJson() {\n return this.convertColumnsObject(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n async getRows() {\n const chunks = await this.fetchAllChunks();\n return (0, getRowsFromChunks_1.getRowsFromChunks)(chunks);\n }\n async convertRows(converter) {\n const chunks = await this.fetchAllChunks();\n return (0, convertRowsFromChunks_1.convertRowsFromChunks)(chunks, converter);\n }\n async getRowsJS() {\n return this.convertRows(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n async getRowsJson() {\n return this.convertRows(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n async getRowObjects() {\n const chunks = await this.fetchAllChunks();\n return (0, getRowObjectsFromChunks_1.getRowObjectsFromChunks)(chunks, this.deduplicatedColumnNames());\n }\n async convertRowObjects(converter) {\n const chunks = await this.fetchAllChunks();\n return (0, convertRowObjectsFromChunks_1.convertRowObjectsFromChunks)(chunks, this.deduplicatedColumnNames(), converter);\n }\n async getRowObjectsJS() {\n return this.convertRowObjects(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n async getRowObjectsJson() {\n return this.convertRowObjects(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n async *[Symbol.asyncIterator]() {\n while (true) {\n const chunk = await this.fetchChunk();\n if (chunk && chunk.rowCount > 0) {\n yield chunk;\n }\n else {\n break;\n }\n }\n }\n async *yieldRows() {\n for await (const chunk of this) {\n yield (0, getRowsFromChunks_1.getRowsFromChunks)([chunk]);\n }\n }\n async *yieldRowObjects() {\n const deduplicatedColumnNames = this.deduplicatedColumnNames();\n for await (const chunk of this) {\n yield (0, getRowObjectsFromChunks_1.getRowObjectsFromChunks)([chunk], deduplicatedColumnNames);\n }\n }\n async *yieldConvertedRows(converter) {\n for await (const chunk of this) {\n yield (0, convertRowsFromChunks_1.convertRowsFromChunks)([chunk], converter);\n }\n }\n async *yieldConvertedRowObjects(converter) {\n const deduplicatedColumnNames = this.deduplicatedColumnNames();\n for await (const chunk of this) {\n yield (0, convertRowObjectsFromChunks_1.convertRowObjectsFromChunks)([chunk], deduplicatedColumnNames, converter);\n }\n }\n yieldRowsJs() {\n return this.yieldConvertedRows(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n yieldRowsJson() {\n return this.yieldConvertedRows(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n yieldRowObjectJs() {\n return this.yieldConvertedRowObjects(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n yieldRowObjectJson() {\n return this.yieldConvertedRowObjects(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n}\nexports.DuckDBResult = DuckDBResult;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBMaterializedResult = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBDataChunk_1 = require(\"./DuckDBDataChunk\");\nconst DuckDBResult_1 = require(\"./DuckDBResult\");\nclass DuckDBMaterializedResult extends DuckDBResult_1.DuckDBResult {\n constructor(result) {\n super(result);\n }\n get rowCount() {\n return node_bindings_1.default.row_count(this.result);\n }\n get chunkCount() {\n return node_bindings_1.default.result_chunk_count(this.result);\n }\n getChunk(chunkIndex) {\n return new DuckDBDataChunk_1.DuckDBDataChunk(node_bindings_1.default.result_get_chunk(this.result, chunkIndex));\n }\n}\nexports.DuckDBMaterializedResult = DuckDBMaterializedResult;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createResult = createResult;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBMaterializedResult_1 = require(\"./DuckDBMaterializedResult\");\nconst DuckDBResult_1 = require(\"./DuckDBResult\");\nfunction createResult(result) {\n if (node_bindings_1.default.result_is_streaming(result)) {\n return new DuckDBResult_1.DuckDBResult(result);\n }\n else {\n return new DuckDBMaterializedResult_1.DuckDBMaterializedResult(result);\n }\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBResultReader = void 0;\nconst convertColumnsFromChunks_1 = require(\"./convertColumnsFromChunks\");\nconst convertColumnsObjectFromChunks_1 = require(\"./convertColumnsObjectFromChunks\");\nconst convertRowObjectsFromChunks_1 = require(\"./convertRowObjectsFromChunks\");\nconst convertRowsFromChunks_1 = require(\"./convertRowsFromChunks\");\nconst getColumnsFromChunks_1 = require(\"./getColumnsFromChunks\");\nconst getColumnsObjectFromChunks_1 = require(\"./getColumnsObjectFromChunks\");\nconst getRowObjectsFromChunks_1 = require(\"./getRowObjectsFromChunks\");\nconst getRowsFromChunks_1 = require(\"./getRowsFromChunks\");\nconst JSDuckDBValueConverter_1 = require(\"./JSDuckDBValueConverter\");\nconst JsonDuckDBValueConverter_1 = require(\"./JsonDuckDBValueConverter\");\nclass DuckDBResultReader {\n result;\n chunks;\n chunkSizeRuns;\n currentRowCount_;\n done_;\n constructor(result) {\n this.result = result;\n this.chunks = [];\n this.chunkSizeRuns = [];\n this.currentRowCount_ = 0;\n this.done_ = false;\n }\n get returnType() {\n return this.result.returnType;\n }\n get statementType() {\n return this.result.statementType;\n }\n get columnCount() {\n return this.result.columnCount;\n }\n columnName(columnIndex) {\n return this.result.columnName(columnIndex);\n }\n columnNames() {\n return this.result.columnNames();\n }\n deduplicatedColumnNames() {\n return this.result.deduplicatedColumnNames();\n }\n columnTypeId(columnIndex) {\n return this.result.columnTypeId(columnIndex);\n }\n columnLogicalType(columnIndex) {\n return this.result.columnLogicalType(columnIndex);\n }\n columnType(columnIndex) {\n return this.result.columnType(columnIndex);\n }\n columnTypeJson(columnIndex) {\n return this.result.columnTypeJson(columnIndex);\n }\n columnTypes() {\n return this.result.columnTypes();\n }\n columnTypesJson() {\n return this.result.columnTypesJson();\n }\n columnNamesAndTypesJson() {\n return this.result.columnNamesAndTypesJson();\n }\n columnNameAndTypeObjectsJson() {\n return this.result.columnNameAndTypeObjectsJson();\n }\n get rowsChanged() {\n return this.result.rowsChanged;\n }\n /** Total number of rows read so far. Call `readAll` or `readUntil` to read rows. */\n get currentRowCount() {\n return this.currentRowCount_;\n }\n /** Whether reading is done, that is, there are no more rows to read. */\n get done() {\n return this.done_;\n }\n /**\n * Returns the value for the given column and row. Both are zero-indexed.\n *\n * Will return an error if `rowIndex` is greater than `currentRowCount`.\n */\n value(columnIndex, rowIndex) {\n if (this.currentRowCount_ === 0) {\n throw Error(`No rows have been read`);\n }\n let chunkIndex = 0;\n let currentRowIndex = rowIndex;\n // Find which run of chunks our row is in.\n // Since chunkSizeRuns shouldn't ever be longer than 2, this should be O(1).\n for (const run of this.chunkSizeRuns) {\n if (currentRowIndex < run.rowCount) {\n // The row we're looking for is in this run.\n // Calculate the chunk index and the row index in that chunk.\n chunkIndex += Math.floor(currentRowIndex / run.chunkSize);\n const rowIndexInChunk = currentRowIndex % run.chunkSize;\n const chunk = this.chunks[chunkIndex];\n return chunk.getColumnVector(columnIndex).getItem(rowIndexInChunk);\n }\n // The row we're looking for is not in this run.\n // Update our counts for this run and move to the next one.\n chunkIndex += run.chunkCount;\n currentRowIndex -= run.rowCount;\n }\n // We didn't find our row. It must have been out of range.\n throw Error(`Row index ${rowIndex} requested, but only ${this.currentRowCount_} row have been read so far.`);\n }\n /** Read all rows. */\n async readAll() {\n return this.fetchChunks();\n }\n /**\n * Read rows until at least the given target row count has been met.\n *\n * Note that the resulting row count could be greater than the target, since rows are read in chunks, typically of 2048 rows each.\n */\n async readUntil(targetRowCount) {\n return this.fetchChunks(targetRowCount);\n }\n async fetchChunks(targetRowCount) {\n while (!(this.done_ ||\n (targetRowCount !== undefined &&\n this.currentRowCount_ >= targetRowCount))) {\n const chunk = await this.result.fetchChunk();\n if (chunk && chunk.rowCount > 0) {\n this.updateChunkSizeRuns(chunk);\n this.chunks.push(chunk);\n this.currentRowCount_ += chunk.rowCount;\n }\n else {\n this.done_ = true;\n }\n }\n }\n updateChunkSizeRuns(chunk) {\n if (this.chunkSizeRuns.length > 0) {\n const lastRun = this.chunkSizeRuns[this.chunkSizeRuns.length - 1];\n if (lastRun.chunkSize === chunk.rowCount) {\n // If the new batch is the same size as the last one, just update our last run.\n lastRun.chunkCount += 1;\n lastRun.rowCount += lastRun.chunkSize;\n return;\n }\n }\n // If this is our first batch, or it's a different size, create a new run.\n this.chunkSizeRuns.push({\n chunkCount: 1,\n chunkSize: chunk.rowCount,\n rowCount: chunk.rowCount,\n });\n }\n getColumns() {\n return (0, getColumnsFromChunks_1.getColumnsFromChunks)(this.chunks);\n }\n convertColumns(converter) {\n return (0, convertColumnsFromChunks_1.convertColumnsFromChunks)(this.chunks, converter);\n }\n getColumnsJS() {\n return this.convertColumns(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n getColumnsJson() {\n return this.convertColumns(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n getColumnsObject() {\n return (0, getColumnsObjectFromChunks_1.getColumnsObjectFromChunks)(this.chunks, this.deduplicatedColumnNames());\n }\n convertColumnsObject(converter) {\n return (0, convertColumnsObjectFromChunks_1.convertColumnsObjectFromChunks)(this.chunks, this.deduplicatedColumnNames(), converter);\n }\n getColumnsObjectJS() {\n return this.convertColumnsObject(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n getColumnsObjectJson() {\n return this.convertColumnsObject(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n getRows() {\n return (0, getRowsFromChunks_1.getRowsFromChunks)(this.chunks);\n }\n convertRows(converter) {\n return (0, convertRowsFromChunks_1.convertRowsFromChunks)(this.chunks, converter);\n }\n getRowsJS() {\n return this.convertRows(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n getRowsJson() {\n return this.convertRows(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n getRowObjects() {\n return (0, getRowObjectsFromChunks_1.getRowObjectsFromChunks)(this.chunks, this.deduplicatedColumnNames());\n }\n convertRowObjects(converter) {\n return (0, convertRowObjectsFromChunks_1.convertRowObjectsFromChunks)(this.chunks, this.deduplicatedColumnNames(), converter);\n }\n getRowObjectsJS() {\n return this.convertRowObjects(JSDuckDBValueConverter_1.JSDuckDBValueConverter);\n }\n getRowObjectsJson() {\n return this.convertRowObjects(JsonDuckDBValueConverter_1.JsonDuckDBValueConverter);\n }\n}\nexports.DuckDBResultReader = DuckDBResultReader;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sleep = sleep;\nasync function sleep(ms) {\n return new Promise((resolve) => {\n setTimeout(resolve, ms);\n });\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBPendingResult = exports.DuckDBPendingResultState = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst createResult_1 = require(\"./createResult\");\nconst DuckDBResultReader_1 = require(\"./DuckDBResultReader\");\nconst sleep_1 = require(\"./sleep\");\n// Values match similar enum in C API.\nvar DuckDBPendingResultState;\n(function (DuckDBPendingResultState) {\n DuckDBPendingResultState[DuckDBPendingResultState[\"RESULT_READY\"] = 0] = \"RESULT_READY\";\n DuckDBPendingResultState[DuckDBPendingResultState[\"RESULT_NOT_READY\"] = 1] = \"RESULT_NOT_READY\";\n DuckDBPendingResultState[DuckDBPendingResultState[\"NO_TASKS_AVAILABLE\"] = 3] = \"NO_TASKS_AVAILABLE\";\n})(DuckDBPendingResultState || (exports.DuckDBPendingResultState = DuckDBPendingResultState = {}));\nclass DuckDBPendingResult {\n pending_result;\n constructor(pending_result) {\n this.pending_result = pending_result;\n }\n runTask() {\n const pending_state = node_bindings_1.default.pending_execute_task(this.pending_result);\n switch (pending_state) {\n case node_bindings_1.default.PendingState.RESULT_READY:\n return DuckDBPendingResultState.RESULT_READY;\n case node_bindings_1.default.PendingState.RESULT_NOT_READY:\n return DuckDBPendingResultState.RESULT_NOT_READY;\n case node_bindings_1.default.PendingState.ERROR:\n throw new Error(`Failure running pending result task: ${node_bindings_1.default.pending_error(this.pending_result)}`);\n case node_bindings_1.default.PendingState.NO_TASKS_AVAILABLE:\n return DuckDBPendingResultState.NO_TASKS_AVAILABLE;\n default:\n throw new Error(`Unexpected pending state: ${pending_state}`);\n }\n }\n async runAllTasks() {\n while (this.runTask() !== DuckDBPendingResultState.RESULT_READY) {\n await (0, sleep_1.sleep)(1);\n }\n }\n async getResult() {\n return (0, createResult_1.createResult)(await node_bindings_1.default.execute_pending(this.pending_result));\n }\n async read() {\n return new DuckDBResultReader_1.DuckDBResultReader(await this.getResult());\n }\n async readAll() {\n const reader = new DuckDBResultReader_1.DuckDBResultReader(await this.getResult());\n await reader.readAll();\n return reader;\n }\n async readUntil(targetRowCount) {\n const reader = new DuckDBResultReader_1.DuckDBResultReader(await this.getResult());\n await reader.readUntil(targetRowCount);\n return reader;\n }\n}\nexports.DuckDBPendingResult = DuckDBPendingResult;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBPreparedStatement = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst createValue_1 = require(\"./createValue\");\nconst DuckDBLogicalType_1 = require(\"./DuckDBLogicalType\");\nconst DuckDBMaterializedResult_1 = require(\"./DuckDBMaterializedResult\");\nconst DuckDBPendingResult_1 = require(\"./DuckDBPendingResult\");\nconst DuckDBResult_1 = require(\"./DuckDBResult\");\nconst DuckDBResultReader_1 = require(\"./DuckDBResultReader\");\nconst DuckDBType_1 = require(\"./DuckDBType\");\nconst typeForValue_1 = require(\"./typeForValue\");\nconst values_1 = require(\"./values\");\nclass DuckDBPreparedStatement {\n prepared_statement;\n constructor(prepared_statement) {\n this.prepared_statement = prepared_statement;\n }\n destroySync() {\n return node_bindings_1.default.destroy_prepare_sync(this.prepared_statement);\n }\n get statementType() {\n return node_bindings_1.default.prepared_statement_type(this.prepared_statement);\n }\n get parameterCount() {\n return node_bindings_1.default.nparams(this.prepared_statement);\n }\n parameterName(parameterIndex) {\n return node_bindings_1.default.parameter_name(this.prepared_statement, parameterIndex);\n }\n parameterTypeId(parameterIndex) {\n return node_bindings_1.default.param_type(this.prepared_statement, parameterIndex);\n }\n parameterType(parameterIndex) {\n return DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.param_logical_type(this.prepared_statement, parameterIndex)).asType();\n }\n get columnCount() {\n return node_bindings_1.default.prepared_statement_column_count(this.prepared_statement);\n }\n columnName(columnIndex) {\n return node_bindings_1.default.prepared_statement_column_name(this.prepared_statement, columnIndex);\n }\n columnTypeId(columnIndex) {\n return node_bindings_1.default.prepared_statement_column_type(this.prepared_statement, columnIndex);\n }\n columnType(columnIndex) {\n return DuckDBLogicalType_1.DuckDBLogicalType.create(node_bindings_1.default.prepared_statement_column_logical_type(this.prepared_statement, columnIndex)).asType();\n }\n clearBindings() {\n node_bindings_1.default.clear_bindings(this.prepared_statement);\n }\n parameterIndex(parameterName) {\n return node_bindings_1.default.bind_parameter_index(this.prepared_statement, parameterName);\n }\n bindBoolean(parameterIndex, value) {\n node_bindings_1.default.bind_boolean(this.prepared_statement, parameterIndex, value);\n }\n bindTinyInt(parameterIndex, value) {\n node_bindings_1.default.bind_int8(this.prepared_statement, parameterIndex, value);\n }\n bindSmallInt(parameterIndex, value) {\n node_bindings_1.default.bind_int16(this.prepared_statement, parameterIndex, value);\n }\n bindInteger(parameterIndex, value) {\n node_bindings_1.default.bind_int32(this.prepared_statement, parameterIndex, value);\n }\n bindBigInt(parameterIndex, value) {\n node_bindings_1.default.bind_int64(this.prepared_statement, parameterIndex, value);\n }\n bindHugeInt(parameterIndex, value) {\n node_bindings_1.default.bind_hugeint(this.prepared_statement, parameterIndex, value);\n }\n bindUTinyInt(parameterIndex, value) {\n node_bindings_1.default.bind_uint8(this.prepared_statement, parameterIndex, value);\n }\n bindUSmallInt(parameterIndex, value) {\n node_bindings_1.default.bind_uint16(this.prepared_statement, parameterIndex, value);\n }\n bindUInteger(parameterIndex, value) {\n node_bindings_1.default.bind_uint32(this.prepared_statement, parameterIndex, value);\n }\n bindUBigInt(parameterIndex, value) {\n node_bindings_1.default.bind_uint64(this.prepared_statement, parameterIndex, value);\n }\n bindUHugeInt(parameterIndex, value) {\n node_bindings_1.default.bind_uhugeint(this.prepared_statement, parameterIndex, value);\n }\n bindBigNum(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.BIGNUM);\n }\n bindDecimal(parameterIndex, value) {\n node_bindings_1.default.bind_decimal(this.prepared_statement, parameterIndex, value);\n }\n bindFloat(parameterIndex, value) {\n node_bindings_1.default.bind_float(this.prepared_statement, parameterIndex, value);\n }\n bindDouble(parameterIndex, value) {\n node_bindings_1.default.bind_double(this.prepared_statement, parameterIndex, value);\n }\n bindDate(parameterIndex, value) {\n node_bindings_1.default.bind_date(this.prepared_statement, parameterIndex, value);\n }\n bindTime(parameterIndex, value) {\n node_bindings_1.default.bind_time(this.prepared_statement, parameterIndex, value);\n }\n bindTimeTZ(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.TIMETZ);\n }\n bindTimestamp(parameterIndex, value) {\n node_bindings_1.default.bind_timestamp(this.prepared_statement, parameterIndex, value);\n }\n bindTimestampTZ(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.TIMESTAMPTZ);\n }\n bindTimestampSeconds(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.TIMESTAMP_S);\n }\n bindTimestampMilliseconds(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.TIMESTAMP_MS);\n }\n bindTimestampNanoseconds(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.TIMESTAMP_NS);\n }\n bindInterval(parameterIndex, value) {\n node_bindings_1.default.bind_interval(this.prepared_statement, parameterIndex, value);\n }\n bindVarchar(parameterIndex, value) {\n node_bindings_1.default.bind_varchar(this.prepared_statement, parameterIndex, value);\n }\n bindBlob(parameterIndex, value) {\n node_bindings_1.default.bind_blob(this.prepared_statement, parameterIndex, value);\n }\n bindEnum(parameterIndex, value, type) {\n this.bindValue(parameterIndex, value, type);\n }\n bindArray(parameterIndex, value, type) {\n this.bindValue(parameterIndex, value instanceof values_1.DuckDBArrayValue ? value : (0, values_1.arrayValue)(value), type);\n }\n bindList(parameterIndex, value, type) {\n this.bindValue(parameterIndex, value instanceof values_1.DuckDBListValue ? value : (0, values_1.listValue)(value), type);\n }\n bindStruct(parameterIndex, value, type) {\n this.bindValue(parameterIndex, value instanceof values_1.DuckDBStructValue ? value : (0, values_1.structValue)(value), type);\n }\n bindMap(parameterIndex, value, type) {\n this.bindValue(parameterIndex, value, type);\n }\n bindUnion(parameterIndex, value, type) {\n this.bindValue(parameterIndex, value, type);\n }\n bindUUID(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.UUID);\n }\n bindBit(parameterIndex, value) {\n this.bindValue(parameterIndex, value, DuckDBType_1.BIT);\n }\n bindNull(parameterIndex) {\n node_bindings_1.default.bind_null(this.prepared_statement, parameterIndex);\n }\n bindValue(parameterIndex, value, type) {\n node_bindings_1.default.bind_value(this.prepared_statement, parameterIndex, (0, createValue_1.createValue)(type ? type : (0, typeForValue_1.typeForValue)(value), value));\n }\n bind(values, types) {\n if (Array.isArray(values)) {\n const typesIsArray = Array.isArray(types);\n for (let i = 0; i < values.length; i++) {\n this.bindValue(i + 1, values[i], typesIsArray ? types[i] : undefined);\n }\n }\n else {\n const typesIsRecord = types && !Array.isArray(types);\n for (const key in values) {\n this.bindValue(this.parameterIndex(key), values[key], typesIsRecord ? types[key] : undefined);\n }\n }\n }\n async run() {\n return new DuckDBMaterializedResult_1.DuckDBMaterializedResult(await node_bindings_1.default.execute_prepared(this.prepared_statement));\n }\n async runAndRead() {\n return new DuckDBResultReader_1.DuckDBResultReader(await this.run());\n }\n async runAndReadAll() {\n const reader = new DuckDBResultReader_1.DuckDBResultReader(await this.run());\n await reader.readAll();\n return reader;\n }\n async runAndReadUntil(targetRowCount) {\n const reader = new DuckDBResultReader_1.DuckDBResultReader(await this.run());\n await reader.readUntil(targetRowCount);\n return reader;\n }\n async stream() {\n return new DuckDBResult_1.DuckDBResult(await node_bindings_1.default.execute_prepared_streaming(this.prepared_statement));\n }\n async streamAndRead() {\n return new DuckDBResultReader_1.DuckDBResultReader(await this.stream());\n }\n async streamAndReadAll() {\n const reader = new DuckDBResultReader_1.DuckDBResultReader(await this.stream());\n await reader.readAll();\n return reader;\n }\n async streamAndReadUntil(targetRowCount) {\n const reader = new DuckDBResultReader_1.DuckDBResultReader(await this.stream());\n await reader.readUntil(targetRowCount);\n return reader;\n }\n start() {\n return new DuckDBPendingResult_1.DuckDBPendingResult(node_bindings_1.default.pending_prepared(this.prepared_statement));\n }\n startStream() {\n return new DuckDBPendingResult_1.DuckDBPendingResult(node_bindings_1.default.pending_prepared_streaming(this.prepared_statement));\n }\n}\nexports.DuckDBPreparedStatement = DuckDBPreparedStatement;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBExtractedStatements = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBPreparedStatement_1 = require(\"./DuckDBPreparedStatement\");\nclass DuckDBExtractedStatements {\n connection;\n extracted_statements;\n statement_count;\n preparedStatements;\n constructor(connection, extracted_statements, statement_count, preparedStatements) {\n this.connection = connection;\n this.extracted_statements = extracted_statements;\n this.statement_count = statement_count;\n this.preparedStatements = preparedStatements;\n }\n get count() {\n return this.statement_count;\n }\n async prepare(index) {\n const prepared = new DuckDBPreparedStatement_1.DuckDBPreparedStatement(await node_bindings_1.default.prepare_extracted_statement(this.connection, this.extracted_statements, index));\n if (this.preparedStatements) {\n this.preparedStatements.add(prepared);\n }\n return prepared;\n }\n}\nexports.DuckDBExtractedStatements = DuckDBExtractedStatements;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createConfig = createConfig;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nfunction createConfig(options) {\n const config = node_bindings_1.default.create_config();\n // Set the default duckdb_api value for the api. Can be overridden.\n node_bindings_1.default.set_config(config, 'duckdb_api', 'node-neo-api');\n if (options) {\n for (const optionName in options) {\n const optionValue = String(options[optionName]);\n node_bindings_1.default.set_config(config, optionName, optionValue);\n }\n }\n return config;\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBInstanceCache = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBInstance_1 = require(\"./DuckDBInstance\");\nconst createConfig_1 = require(\"./createConfig\");\nclass DuckDBInstanceCache {\n cache;\n constructor() {\n this.cache = node_bindings_1.default.create_instance_cache();\n }\n async getOrCreateInstance(path, options) {\n const config = (0, createConfig_1.createConfig)(options);\n const db = await node_bindings_1.default.get_or_create_from_cache(this.cache, path, config);\n return new DuckDBInstance_1.DuckDBInstance(db);\n }\n static singletonInstance;\n static get singleton() {\n if (!DuckDBInstanceCache.singletonInstance) {\n DuckDBInstanceCache.singletonInstance = new DuckDBInstanceCache();\n }\n return DuckDBInstanceCache.singletonInstance;\n }\n}\nexports.DuckDBInstanceCache = DuckDBInstanceCache;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBInstance = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst createConfig_1 = require(\"./createConfig\");\nconst DuckDBConnection_1 = require(\"./DuckDBConnection\");\nconst DuckDBInstanceCache_1 = require(\"./DuckDBInstanceCache\");\nclass DuckDBInstance {\n db;\n constructor(db) {\n this.db = db;\n }\n static async create(path, options) {\n const config = (0, createConfig_1.createConfig)(options);\n return new DuckDBInstance(await node_bindings_1.default.open(path, config));\n }\n static async fromCache(path, options) {\n return DuckDBInstanceCache_1.DuckDBInstanceCache.singleton.getOrCreateInstance(path, options);\n }\n async connect() {\n return new DuckDBConnection_1.DuckDBConnection(await node_bindings_1.default.connect(this.db));\n }\n closeSync() {\n node_bindings_1.default.close_sync(this.db);\n }\n}\nexports.DuckDBInstance = DuckDBInstance;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBPreparedStatementWeakRefCollection = void 0;\nclass DuckDBPreparedStatementWeakRefCollection {\n preparedStatements = [];\n lastPruneTime = 0;\n add(prepared) {\n const now = performance.now();\n if (now - this.lastPruneTime > 1000) {\n this.lastPruneTime = now;\n this.prune();\n }\n this.preparedStatements.push(new WeakRef(prepared));\n }\n destroySync() {\n for (const preparedRef of this.preparedStatements) {\n const prepared = preparedRef.deref();\n if (prepared) {\n prepared.destroySync();\n }\n }\n this.preparedStatements = [];\n }\n prune() {\n this.preparedStatements = this.preparedStatements.filter((ref) => !!ref.deref());\n }\n}\nexports.DuckDBPreparedStatementWeakRefCollection = DuckDBPreparedStatementWeakRefCollection;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBConnection = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBAppender_1 = require(\"./DuckDBAppender\");\nconst DuckDBClientContext_1 = require(\"./DuckDBClientContext\");\nconst DuckDBExtractedStatements_1 = require(\"./DuckDBExtractedStatements\");\nconst DuckDBInstance_1 = require(\"./DuckDBInstance\");\nconst DuckDBMaterializedResult_1 = require(\"./DuckDBMaterializedResult\");\nconst DuckDBPreparedStatement_1 = require(\"./DuckDBPreparedStatement\");\nconst DuckDBPreparedStatementWeakRefCollection_1 = require(\"./DuckDBPreparedStatementWeakRefCollection\");\nconst DuckDBResultReader_1 = require(\"./DuckDBResultReader\");\nclass DuckDBConnection {\n connection;\n preparedStatements;\n constructor(connection) {\n this.connection = connection;\n this.preparedStatements = new DuckDBPreparedStatementWeakRefCollection_1.DuckDBPreparedStatementWeakRefCollection();\n }\n static async create(instance) {\n if (instance) {\n return instance.connect();\n }\n return (await DuckDBInstance_1.DuckDBInstance.fromCache()).connect();\n }\n /** Same as disconnectSync. */\n closeSync() {\n this.disconnectSync();\n }\n disconnectSync() {\n this.preparedStatements.destroySync();\n node_bindings_1.default.disconnect_sync(this.connection);\n }\n get clientContext() {\n return new DuckDBClientContext_1.DuckDBClientContext(node_bindings_1.default.connection_get_client_context(this.connection));\n }\n interrupt() {\n node_bindings_1.default.interrupt(this.connection);\n }\n get progress() {\n return node_bindings_1.default.query_progress(this.connection);\n }\n async run(sql, values, types) {\n if (values) {\n const prepared = await this.runUntilLast(sql);\n try {\n prepared.bind(values, types);\n const result = await prepared.run();\n return result;\n }\n finally {\n prepared.destroySync();\n }\n }\n else {\n return new DuckDBMaterializedResult_1.DuckDBMaterializedResult(await node_bindings_1.default.query(this.connection, sql));\n }\n }\n async runAndRead(sql, values, types) {\n return new DuckDBResultReader_1.DuckDBResultReader(await this.run(sql, values, types));\n }\n async runAndReadAll(sql, values, types) {\n const reader = await this.runAndRead(sql, values, types);\n await reader.readAll();\n return reader;\n }\n async runAndReadUntil(sql, targetRowCount, values, types) {\n const reader = await this.runAndRead(sql, values, types);\n await reader.readUntil(targetRowCount);\n return reader;\n }\n async stream(sql, values, types) {\n const prepared = await this.runUntilLast(sql);\n try {\n if (values) {\n prepared.bind(values, types);\n }\n const result = await prepared.stream();\n return result;\n }\n finally {\n prepared.destroySync();\n }\n }\n async streamAndRead(sql, values, types) {\n return new DuckDBResultReader_1.DuckDBResultReader(await this.stream(sql, values, types));\n }\n async streamAndReadAll(sql, values, types) {\n const reader = await this.streamAndRead(sql, values, types);\n await reader.readAll();\n return reader;\n }\n async streamAndReadUntil(sql, targetRowCount, values, types) {\n const reader = await this.streamAndRead(sql, values, types);\n await reader.readUntil(targetRowCount);\n return reader;\n }\n async start(sql, values, types) {\n const prepared = await this.runUntilLast(sql);\n try {\n if (values) {\n prepared.bind(values, types);\n }\n return prepared.start();\n }\n finally {\n prepared.destroySync();\n }\n }\n async startThenRead(sql, values, types) {\n const pending = await this.start(sql, values, types);\n await pending.runAllTasks();\n return new DuckDBResultReader_1.DuckDBResultReader(await pending.getResult());\n }\n async startThenReadAll(sql, values, types) {\n const reader = await this.startThenRead(sql, values, types);\n await reader.readAll();\n return reader;\n }\n async startThenReadUntil(sql, targetRowCount, values, types) {\n const reader = await this.startThenRead(sql, values, types);\n await reader.readUntil(targetRowCount);\n return reader;\n }\n async startStream(sql, values, types) {\n const prepared = await this.runUntilLast(sql);\n try {\n if (values) {\n prepared.bind(values, types);\n }\n return prepared.startStream();\n }\n finally {\n prepared.destroySync();\n }\n }\n async startStreamThenRead(sql, values, types) {\n const pending = await this.startStream(sql, values, types);\n await pending.runAllTasks();\n return new DuckDBResultReader_1.DuckDBResultReader(await pending.getResult());\n }\n async startStreamThenReadAll(sql, values, types) {\n const reader = await this.startStreamThenRead(sql, values, types);\n await reader.readAll();\n return reader;\n }\n async startStreamThenReadUntil(sql, targetRowCount, values, types) {\n const reader = await this.startStreamThenRead(sql, values, types);\n await reader.readUntil(targetRowCount);\n return reader;\n }\n async prepare(sql) {\n const prepared = await this.createPrepared(sql);\n this.preparedStatements.add(prepared);\n return prepared;\n }\n async createPrepared(sql) {\n return new DuckDBPreparedStatement_1.DuckDBPreparedStatement(await node_bindings_1.default.prepare(this.connection, sql));\n }\n async extractStatements(sql) {\n const { extracted_statements, statement_count } = await node_bindings_1.default.extract_statements(this.connection, sql);\n if (statement_count === 0) {\n throw new Error(`Failed to extract statements: ${node_bindings_1.default.extract_statements_error(extracted_statements)}`);\n }\n return new DuckDBExtractedStatements_1.DuckDBExtractedStatements(this.connection, extracted_statements, statement_count, this.preparedStatements);\n }\n async runUntilLast(sql) {\n const extractedStatements = await this.extractStatements(sql);\n const statementCount = extractedStatements.count;\n if (statementCount > 1) {\n for (let i = 0; i < statementCount - 1; i++) {\n const prepared = await extractedStatements.prepare(i);\n try {\n await prepared.run();\n }\n finally {\n prepared.destroySync();\n }\n }\n }\n return extractedStatements.prepare(statementCount - 1);\n }\n getTableNames(query, qualified) {\n const names = [];\n const list_value = node_bindings_1.default.get_table_names(this.connection, query, qualified);\n const count = node_bindings_1.default.get_list_size(list_value);\n for (let i = 0; i < count; i++) {\n const varchar_value = node_bindings_1.default.get_list_child(list_value, i);\n const name = node_bindings_1.default.get_varchar(varchar_value);\n names.push(name);\n }\n names.sort();\n return names;\n }\n async createAppender(table, schema, catalog) {\n return new DuckDBAppender_1.DuckDBAppender(node_bindings_1.default.appender_create_ext(this.connection, catalog ?? null, schema ?? null, table));\n }\n registerScalarFunction(scalarFunction) {\n node_bindings_1.default.register_scalar_function(this.connection, scalarFunction.scalar_function);\n }\n}\nexports.DuckDBConnection = DuckDBConnection;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBFunctionInfo = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nclass DuckDBFunctionInfo {\n function_info;\n constructor(function_info) {\n this.function_info = function_info;\n }\n getExtraInfo() {\n return node_bindings_1.default.scalar_function_get_extra_info(this.function_info);\n }\n setError(error) {\n node_bindings_1.default.scalar_function_set_error(this.function_info, error);\n }\n}\nexports.DuckDBFunctionInfo = DuckDBFunctionInfo;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuckDBScalarFunction = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nconst DuckDBDataChunk_1 = require(\"./DuckDBDataChunk\");\nconst DuckDBFunctionInfo_1 = require(\"./DuckDBFunctionInfo\");\nconst DuckDBVector_1 = require(\"./DuckDBVector\");\nclass DuckDBScalarFunction {\n scalar_function;\n constructor() {\n this.scalar_function = node_bindings_1.default.create_scalar_function();\n }\n static create({ name, mainFunction, returnType, parameterTypes, varArgsType, specialHandling, volatile, extraInfo, }) {\n const scalarFunction = new DuckDBScalarFunction();\n scalarFunction.setName(name);\n scalarFunction.setMainFunction(mainFunction);\n scalarFunction.setReturnType(returnType);\n if (parameterTypes) {\n for (const parameterType of parameterTypes) {\n scalarFunction.addParameter(parameterType);\n }\n }\n if (varArgsType) {\n scalarFunction.setVarArgs(varArgsType);\n }\n if (specialHandling) {\n scalarFunction.setSpecialHandling();\n }\n if (volatile) {\n scalarFunction.setVolatile();\n }\n if (extraInfo) {\n scalarFunction.setExtraInfo(extraInfo);\n }\n return scalarFunction;\n }\n destroySync() {\n node_bindings_1.default.destroy_scalar_function_sync(this.scalar_function);\n }\n setName(name) {\n node_bindings_1.default.scalar_function_set_name(this.scalar_function, name);\n }\n setMainFunction(mainFunction) {\n node_bindings_1.default.scalar_function_set_function(this.scalar_function, (info, input, output) => {\n const functionInfo = new DuckDBFunctionInfo_1.DuckDBFunctionInfo(info);\n const inputDataChunk = new DuckDBDataChunk_1.DuckDBDataChunk(input);\n const outputVector = DuckDBVector_1.DuckDBVector.create(output, inputDataChunk.rowCount);\n mainFunction(functionInfo, inputDataChunk, outputVector);\n });\n }\n setReturnType(returnType) {\n node_bindings_1.default.scalar_function_set_return_type(this.scalar_function, returnType.toLogicalType().logical_type);\n }\n addParameter(parameterType) {\n node_bindings_1.default.scalar_function_add_parameter(this.scalar_function, parameterType.toLogicalType().logical_type);\n }\n setVarArgs(varArgsType) {\n node_bindings_1.default.scalar_function_set_varargs(this.scalar_function, varArgsType.toLogicalType().logical_type);\n }\n setSpecialHandling() {\n node_bindings_1.default.scalar_function_set_special_handling(this.scalar_function);\n }\n setVolatile() {\n node_bindings_1.default.scalar_function_set_volatile(this.scalar_function);\n }\n setExtraInfo(extraInfo) {\n node_bindings_1.default.scalar_function_set_extra_info(this.scalar_function, extraInfo);\n }\n}\nexports.DuckDBScalarFunction = DuckDBScalarFunction;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.StatementType = exports.ResultReturnType = void 0;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nexports.ResultReturnType = node_bindings_1.default.ResultType;\nexports.StatementType = node_bindings_1.default.StatementType;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.version = version;\nconst node_bindings_1 = __importDefault(require(\"@duckdb/node-bindings\"));\nfunction version() {\n return node_bindings_1.default.library_version();\n}\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.uhugeint_to_double = exports.hugeint_to_double = exports.double_to_uhugeint = exports.double_to_hugeint = void 0;\nvar node_bindings_1 = require(\"@duckdb/node-bindings\");\nObject.defineProperty(exports, \"double_to_hugeint\", { enumerable: true, get: function () { return node_bindings_1.double_to_hugeint; } });\nObject.defineProperty(exports, \"double_to_uhugeint\", { enumerable: true, get: function () { return node_bindings_1.double_to_uhugeint; } });\nObject.defineProperty(exports, \"hugeint_to_double\", { enumerable: true, get: function () { return node_bindings_1.hugeint_to_double; } });\nObject.defineProperty(exports, \"uhugeint_to_double\", { enumerable: true, get: function () { return node_bindings_1.uhugeint_to_double; } });\n__exportStar(require(\"./configurationOptionDescriptions\"), exports);\n__exportStar(require(\"./createDuckDBValueConverter\"), exports);\n__exportStar(require(\"./DuckDBAppender\"), exports);\n__exportStar(require(\"./DuckDBClientContext\"), exports);\n__exportStar(require(\"./DuckDBConnection\"), exports);\n__exportStar(require(\"./DuckDBDataChunk\"), exports);\n__exportStar(require(\"./DuckDBExtractedStatements\"), exports);\n__exportStar(require(\"./DuckDBFunctionInfo\"), exports);\n__exportStar(require(\"./DuckDBInstance\"), exports);\n__exportStar(require(\"./DuckDBInstanceCache\"), exports);\n__exportStar(require(\"./DuckDBLogicalType\"), exports);\n__exportStar(require(\"./DuckDBMaterializedResult\"), exports);\n__exportStar(require(\"./DuckDBPendingResult\"), exports);\n__exportStar(require(\"./DuckDBPreparedStatement\"), exports);\n__exportStar(require(\"./DuckDBPreparedStatementCollection\"), exports);\n__exportStar(require(\"./DuckDBResult\"), exports);\n__exportStar(require(\"./DuckDBResultReader\"), exports);\n__exportStar(require(\"./DuckDBScalarFunction\"), exports);\n__exportStar(require(\"./DuckDBType\"), exports);\n__exportStar(require(\"./DuckDBTypeId\"), exports);\n__exportStar(require(\"./DuckDBValueConverter\"), exports);\n__exportStar(require(\"./DuckDBValueConverters\"), exports);\n__exportStar(require(\"./DuckDBVector\"), exports);\n__exportStar(require(\"./enums\"), exports);\n__exportStar(require(\"./JS\"), exports);\n__exportStar(require(\"./JSDuckDBValueConverter\"), exports);\n__exportStar(require(\"./Json\"), exports);\n__exportStar(require(\"./JsonDuckDBValueConverter\"), exports);\n__exportStar(require(\"./sql\"), exports);\n__exportStar(require(\"./values\"), exports);\n__exportStar(require(\"./version\"), exports);\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || (function () {\n var ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n };\n return function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n };\n})();\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst duckdb = __importStar(require(\"./duckdb\"));\nexports.default = duckdb;\n__exportStar(require(\"./duckdb\"), exports);\n"],"mappings":"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","names":["DuckDBTypeId","exports","DuckDBPendingResultState","exports","o","exports"]}
|