@firtoz/drizzle-utils 1.2.1 → 1.3.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.
Files changed (40) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +8 -1
  3. package/dist/chunk-7RBDVFVG.js +408 -0
  4. package/dist/chunk-7RBDVFVG.js.map +1 -0
  5. package/dist/chunk-J7DNZ25N.js +3 -0
  6. package/dist/chunk-J7DNZ25N.js.map +1 -0
  7. package/dist/chunk-JM254VLB.js +92 -0
  8. package/dist/chunk-JM254VLB.js.map +1 -0
  9. package/dist/chunk-LIICLRMB.js +45 -0
  10. package/dist/chunk-LIICLRMB.js.map +1 -0
  11. package/dist/chunk-TOYHUPFU.js +91 -0
  12. package/dist/chunk-TOYHUPFU.js.map +1 -0
  13. package/dist/collection-utils.d.ts +106 -0
  14. package/dist/collection-utils.js +3 -0
  15. package/dist/collection-utils.js.map +1 -0
  16. package/dist/drizzle-sqlite-table-collection.d.ts +19 -0
  17. package/dist/drizzle-sqlite-table-collection.js +3 -0
  18. package/dist/drizzle-sqlite-table-collection.js.map +1 -0
  19. package/dist/index.d.ts +13 -0
  20. package/dist/index.js +7 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/sqlite-table-sync/convert-ir.d.ts +10 -0
  23. package/dist/sqlite-table-sync/convert-ir.js +3 -0
  24. package/dist/sqlite-table-sync/convert-ir.js.map +1 -0
  25. package/dist/sqlite-table-sync/index.d.ts +11 -0
  26. package/dist/sqlite-table-sync/index.js +5 -0
  27. package/dist/sqlite-table-sync/index.js.map +1 -0
  28. package/dist/sqlite-table-sync/sqlite-table-sync-backend.d.ts +28 -0
  29. package/dist/sqlite-table-sync/sqlite-table-sync-backend.js +4 -0
  30. package/dist/sqlite-table-sync/sqlite-table-sync-backend.js.map +1 -0
  31. package/dist/sqlite-table-sync/types.d.ts +59 -0
  32. package/dist/sqlite-table-sync/types.js +3 -0
  33. package/dist/sqlite-table-sync/types.js.map +1 -0
  34. package/dist/syncableTable.d.ts +49 -0
  35. package/dist/syncableTable.js +3 -0
  36. package/dist/syncableTable.js.map +1 -0
  37. package/dist/types.d.ts +89 -0
  38. package/dist/types.js +3 -0
  39. package/dist/types.js.map +1 -0
  40. package/package.json +23 -12
@@ -0,0 +1,45 @@
1
+ import { integer, text, sqliteTable } from 'drizzle-orm/sqlite-core';
2
+ import { getTableColumns, SQL } from 'drizzle-orm';
3
+
4
+ // src/syncableTable.ts
5
+ var createTableIdColumn = () => text("id").primaryKey().$type().$defaultFn(() => {
6
+ return crypto.randomUUID();
7
+ });
8
+ var createdAtColumn = integer("createdAt", { mode: "timestamp_ms" }).$defaultFn(() => /* @__PURE__ */ new Date()).notNull();
9
+ var updatedAtColumn = integer("updatedAt", { mode: "timestamp_ms" }).$defaultFn(() => /* @__PURE__ */ new Date()).notNull();
10
+ var deletedAtColumn = integer("deletedAt", {
11
+ mode: "timestamp_ms"
12
+ });
13
+ var syncableTable = (tableName, columns, extraConfig) => {
14
+ const tableIdColumn = createTableIdColumn();
15
+ const table = sqliteTable(
16
+ tableName,
17
+ {
18
+ id: tableIdColumn,
19
+ createdAt: createdAtColumn,
20
+ updatedAt: updatedAtColumn,
21
+ deletedAt: deletedAtColumn,
22
+ ...columns
23
+ },
24
+ extraConfig
25
+ );
26
+ const tableColumns = getTableColumns(table);
27
+ for (const columnName in tableColumns) {
28
+ const column = tableColumns[columnName];
29
+ if (column.defaultFn) {
30
+ continue;
31
+ }
32
+ if (column.default instanceof SQL) {
33
+ throw new Error(
34
+ `Default value for column ${tableName}.${columnName} is a SQL expression, which is not supported for IndexedDB.
35
+
36
+ You can use a default value or a default function instead.`
37
+ );
38
+ }
39
+ }
40
+ return table;
41
+ };
42
+
43
+ export { createdAtColumn, deletedAtColumn, syncableTable, updatedAtColumn };
44
+ //# sourceMappingURL=chunk-LIICLRMB.js.map
45
+ //# sourceMappingURL=chunk-LIICLRMB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/syncableTable.ts"],"names":[],"mappings":";;;;AAYA,IAAM,mBAAA,GAAsB,MAC3B,IAAA,CAAK,IAAI,CAAA,CACP,YAAW,CACX,KAAA,EAA2B,CAC3B,UAAA,CAAW,MAAM;AACjB,EAAA,OAAO,OAAO,UAAA,EAAW;AAC1B,CAAC,CAAA;AAGI,IAAM,eAAA,GAAkB,OAAA,CAAQ,WAAA,EAAa,EAAE,MAAM,cAAA,EAAgB,CAAA,CAC1E,UAAA,CAAW,sBAAM,IAAI,IAAA,EAAM,EAC3B,OAAA;AAEK,IAAM,eAAA,GAAkB,OAAA,CAAQ,WAAA,EAAa,EAAE,MAAM,cAAA,EAAgB,CAAA,CAC1E,UAAA,CAAW,sBAAM,IAAI,IAAA,EAAM,EAC3B,OAAA;AAEK,IAAM,eAAA,GAAkB,QAAQ,WAAA,EAAa;AAAA,EACnD,IAAA,EAAM;AACP,CAAC;AAEM,IAAM,aAAA,GAAgB,CAS5B,SAAA,EACA,OAAA,EACA,WAAA,KAYI;AACJ,EAAA,MAAM,gBAAgB,mBAAA,EAAgC;AACtD,EAAA,MAAM,KAAA,GAAQ,WAAA;AAAA,IACb,SAAA;AAAA,IACA;AAAA,MACC,EAAA,EAAI,aAAA;AAAA,MACJ,SAAA,EAAW,eAAA;AAAA,MACX,SAAA,EAAW,eAAA;AAAA,MACX,SAAA,EAAW,eAAA;AAAA,MACX,GAAG;AAAA,KACJ;AAAA,IACA;AAAA,GACD;AAEA,EAAA,MAAM,YAAA,GAAe,gBAAgB,KAAK,CAAA;AAI1C,EAAA,KAAA,MAAW,cAAc,YAAA,EAAc;AACtC,IAAA,MAAM,MAAA,GAAS,aAAa,UAAU,CAAA;AAItC,IAAA,IAAI,OAAO,SAAA,EAAW;AACrB,MAAA;AAAA,IACD;AACA,IAAA,IAAI,MAAA,CAAO,mBAAmB,GAAA,EAAK;AAClC,MAAA,MAAM,IAAI,KAAA;AAAA,QACT,CAAA,yBAAA,EAA4B,SAAS,CAAA,CAAA,EAAI,UAAU,CAAA;;AAAA,0DAAA;AAAA,OACpD;AAAA,IACD;AAAA,EACD;AAEA,EAAA,OAAO,KAAA;AACR","file":"chunk-LIICLRMB.js","sourcesContent":["import {\n\tinteger,\n\ttext,\n\tsqliteTable,\n\ttype SQLiteColumnBuilderBase,\n\ttype TableConfig,\n\ttype SQLiteTableExtraConfigValue,\n\ttype SQLiteTableWithColumns,\n} from \"drizzle-orm/sqlite-core\";\nimport { type BuildColumns, getTableColumns, SQL } from \"drizzle-orm\";\nimport type { TableId } from \"./collection-utils\";\n\nconst createTableIdColumn = <TTableName extends string>() =>\n\ttext(\"id\")\n\t\t.primaryKey()\n\t\t.$type<TableId<TTableName>>()\n\t\t.$defaultFn(() => {\n\t\t\treturn crypto.randomUUID() as TableId<TTableName>;\n\t\t});\n\n// Use unixepoch with 'subsec' modifier for millisecond precision timestamps\nexport const createdAtColumn = integer(\"createdAt\", { mode: \"timestamp_ms\" })\n\t.$defaultFn(() => new Date())\n\t.notNull();\n\nexport const updatedAtColumn = integer(\"updatedAt\", { mode: \"timestamp_ms\" })\n\t.$defaultFn(() => new Date())\n\t.notNull();\n\nexport const deletedAtColumn = integer(\"deletedAt\", {\n\tmode: \"timestamp_ms\",\n});\n\nexport const syncableTable = <\n\tTTableName extends string,\n\tTColumns extends Record<string, SQLiteColumnBuilderBase> & {\n\t\tid?: never;\n\t\tcreatedAt?: never;\n\t\tupdatedAt?: never;\n\t\tdeletedAt?: never;\n\t},\n>(\n\ttableName: TTableName,\n\tcolumns: TColumns,\n\textraConfig?: (\n\t\tself: BuildColumns<\n\t\t\tTTableName,\n\t\t\tOmit<TColumns, \"id\" | \"createdAt\" | \"updatedAt\" | \"deletedAt\"> & {\n\t\t\t\tid: ReturnType<typeof createTableIdColumn<TTableName>>;\n\t\t\t\tcreatedAt: typeof createdAtColumn;\n\t\t\t\tupdatedAt: typeof updatedAtColumn;\n\t\t\t\tdeletedAt: typeof deletedAtColumn;\n\t\t\t},\n\t\t\t\"sqlite\"\n\t\t>,\n\t) => SQLiteTableExtraConfigValue[],\n) => {\n\tconst tableIdColumn = createTableIdColumn<TTableName>();\n\tconst table = sqliteTable(\n\t\ttableName,\n\t\t{\n\t\t\tid: tableIdColumn,\n\t\t\tcreatedAt: createdAtColumn,\n\t\t\tupdatedAt: updatedAtColumn,\n\t\t\tdeletedAt: deletedAtColumn,\n\t\t\t...columns,\n\t\t},\n\t\textraConfig,\n\t);\n\n\tconst tableColumns = getTableColumns(table);\n\n\t// console.log(\"table:\", table);\n\n\tfor (const columnName in tableColumns) {\n\t\tconst column = tableColumns[columnName];\n\n\t\t// Avoid executing defaultFn at module initialization time.\n\t\t// In Cloudflare Workers this can trigger disallowed global-scope APIs.\n\t\tif (column.defaultFn) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (column.default instanceof SQL) {\n\t\t\tthrow new Error(\n\t\t\t\t`Default value for column ${tableName}.${columnName} is a SQL expression, which is not supported for IndexedDB.\\n\\nYou can use a default value or a default function instead.`,\n\t\t\t);\n\t\t}\n\t}\n\n\treturn table;\n};\n\nexport type TableWithRequiredFields = SQLiteTableWithColumns<\n\tPick<TableConfig, \"name\" | \"schema\" | \"dialect\"> & {\n\t\tcolumns: BuildColumns<\n\t\t\tstring,\n\t\t\t{\n\t\t\t\tid: ReturnType<typeof createTableIdColumn<string>>;\n\t\t\t\tcreatedAt: typeof createdAtColumn;\n\t\t\t\tupdatedAt: typeof updatedAtColumn;\n\t\t\t\tdeletedAt: typeof deletedAtColumn;\n\t\t\t},\n\t\t\t\"sqlite\"\n\t\t>;\n\t}\n>;\n"]}
@@ -0,0 +1,91 @@
1
+ import { USE_DEDUPE as USE_DEDUPE$1, createGenericSyncFunction, createGenericCollectionConfig } from '@firtoz/db-helpers';
2
+ import { getTableColumns, SQL } from 'drizzle-orm';
3
+ import { createInsertSchema } from 'drizzle-valibot';
4
+ import * as v from 'valibot';
5
+
6
+ // src/collection-utils.ts
7
+ function makeId(_table, value) {
8
+ return value;
9
+ }
10
+ var USE_DEDUPE = USE_DEDUPE$1;
11
+ function createSyncFunction(config, backend) {
12
+ return createGenericSyncFunction(config, backend);
13
+ }
14
+ function createInsertSchemaWithDefaults(table) {
15
+ const insertSchema = createInsertSchema(table);
16
+ const columns = getTableColumns(table);
17
+ for (const columnName in columns) {
18
+ const column = columns[columnName];
19
+ let defaultValue;
20
+ if (column.defaultFn) {
21
+ defaultValue = column.defaultFn();
22
+ } else if (column.default !== void 0) {
23
+ defaultValue = column.default;
24
+ }
25
+ if (defaultValue instanceof SQL) {
26
+ throw new Error(
27
+ `Default value for column ${columnName} is a SQL expression, which is not supported for IndexedDB`
28
+ );
29
+ }
30
+ }
31
+ return v.pipe(
32
+ insertSchema,
33
+ v.transform((input) => {
34
+ const result = { ...input };
35
+ for (const columnName in columns) {
36
+ const column = columns[columnName];
37
+ if (result[columnName] !== void 0) continue;
38
+ let defaultValue;
39
+ if (column.defaultFn) {
40
+ defaultValue = column.defaultFn();
41
+ } else if (column.default !== void 0) {
42
+ defaultValue = column.default;
43
+ }
44
+ if (defaultValue instanceof SQL) {
45
+ throw new Error(
46
+ `Default value for column ${columnName} is a SQL expression, which is not supported for IndexedDB`
47
+ );
48
+ }
49
+ if (defaultValue !== void 0) {
50
+ result[columnName] = defaultValue;
51
+ continue;
52
+ }
53
+ if (column.notNull) {
54
+ throw new Error(`Column ${columnName} is not nullable`);
55
+ }
56
+ result[columnName] = null;
57
+ }
58
+ return result;
59
+ })
60
+ );
61
+ }
62
+ function createInsertSchemaWithIdDefault(table) {
63
+ const insertSchema = createInsertSchema(table);
64
+ const columns = getTableColumns(table);
65
+ const idColumn = columns.id;
66
+ return v.pipe(
67
+ insertSchema,
68
+ v.transform((input) => {
69
+ const result = { ...input };
70
+ if (result.id === void 0 && idColumn?.defaultFn) {
71
+ result.id = idColumn.defaultFn();
72
+ }
73
+ return result;
74
+ })
75
+ );
76
+ }
77
+ function createGetKeyFunction() {
78
+ return (item) => item.id;
79
+ }
80
+ function createCollectionConfig(config) {
81
+ const { getKey: getId, ...rest } = config;
82
+ return createGenericCollectionConfig({
83
+ ...rest,
84
+ // Generic sync is typed with string keys; runtime id may be number — same value as Drizzle row id.
85
+ getKey: (item) => getId(item)
86
+ });
87
+ }
88
+
89
+ export { USE_DEDUPE, createCollectionConfig, createGetKeyFunction, createInsertSchemaWithDefaults, createInsertSchemaWithIdDefault, createSyncFunction, makeId };
90
+ //# sourceMappingURL=chunk-TOYHUPFU.js.map
91
+ //# sourceMappingURL=chunk-TOYHUPFU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/collection-utils.ts"],"names":["_USE_DEDUPE"],"mappings":";;;;;;AA2CO,SAAS,MAAA,CACf,QACA,KAAA,EACe;AACf,EAAA,OAAO,KAAA;AACR;AAuDO,IAAM,UAAA,GAAaA;AA8BnB,SAAS,kBAAA,CACf,QACA,OAAA,EAC6B;AAC7B,EAAA,OAAO,yBAAA,CAA0B,QAAQ,OAAO,CAAA;AACjD;AAMO,SAAS,+BACf,KAAA,EAC+B;AAC/B,EAAA,MAAM,YAAA,GAAe,mBAAmB,KAAK,CAAA;AAC7C,EAAA,MAAM,OAAA,GAAU,gBAAgB,KAAK,CAAA;AAGrC,EAAA,KAAA,MAAW,cAAc,OAAA,EAAS;AACjC,IAAA,MAAM,MAAA,GAAS,QAAQ,UAAU,CAAA;AAEjC,IAAA,IAAI,YAAA;AACJ,IAAA,IAAI,OAAO,SAAA,EAAW;AACrB,MAAA,YAAA,GAAe,OAAO,SAAA,EAAU;AAAA,IACjC,CAAA,MAAA,IAAW,MAAA,CAAO,OAAA,KAAY,MAAA,EAAW;AACxC,MAAA,YAAA,GAAe,MAAA,CAAO,OAAA;AAAA,IACvB;AAEA,IAAA,IAAI,wBAAwB,GAAA,EAAK;AAChC,MAAA,MAAM,IAAI,KAAA;AAAA,QACT,4BAA4B,UAAU,CAAA,0DAAA;AAAA,OACvC;AAAA,IACD;AAAA,EACD;AAGA,EAAA,OAAS,CAAA,CAAA,IAAA;AAAA,IACR,YAAA;AAAA,IACE,CAAA,CAAA,SAAA,CAAU,CAAC,KAAA,KAAU;AACtB,MAAA,MAAM,MAAA,GAAS,EAAE,GAAG,KAAA,EAAM;AAE1B,MAAA,KAAA,MAAW,cAAc,OAAA,EAAS;AACjC,QAAA,MAAM,MAAA,GAAS,QAAQ,UAAU,CAAA;AACjC,QAAA,IAAI,MAAA,CAAO,UAAU,CAAA,KAAM,MAAA,EAAW;AAEtC,QAAA,IAAI,YAAA;AACJ,QAAA,IAAI,OAAO,SAAA,EAAW;AACrB,UAAA,YAAA,GAAe,OAAO,SAAA,EAAU;AAAA,QACjC,CAAA,MAAA,IAAW,MAAA,CAAO,OAAA,KAAY,MAAA,EAAW;AACxC,UAAA,YAAA,GAAe,MAAA,CAAO,OAAA;AAAA,QACvB;AAEA,QAAA,IAAI,wBAAwB,GAAA,EAAK;AAChC,UAAA,MAAM,IAAI,KAAA;AAAA,YACT,4BAA4B,UAAU,CAAA,0DAAA;AAAA,WACvC;AAAA,QACD;AAEA,QAAA,IAAI,iBAAiB,MAAA,EAAW;AAC/B,UAAA,MAAA,CAAO,UAAU,CAAA,GAAI,YAAA;AACrB,UAAA;AAAA,QACD;AAEA,QAAA,IAAI,OAAO,OAAA,EAAS;AACnB,UAAA,MAAM,IAAI,KAAA,CAAM,CAAA,OAAA,EAAU,UAAU,CAAA,gBAAA,CAAkB,CAAA;AAAA,QACvD;AAEA,QAAA,MAAA,CAAO,UAAU,CAAA,GAAI,IAAA;AAAA,MACtB;AAEA,MAAA,OAAO,MAAA;AAAA,IACR,CAAC;AAAA,GACF;AACD;AAMO,SAAS,gCACf,KAAA,EAC+B;AAC/B,EAAA,MAAM,YAAA,GAAe,mBAAmB,KAAK,CAAA;AAC7C,EAAA,MAAM,OAAA,GAAU,gBAAgB,KAAK,CAAA;AACrC,EAAA,MAAM,WAAW,OAAA,CAAQ,EAAA;AAEzB,EAAA,OAAS,CAAA,CAAA,IAAA;AAAA,IACR,YAAA;AAAA,IACE,CAAA,CAAA,SAAA,CAAU,CAAC,KAAA,KAAU;AACtB,MAAA,MAAM,MAAA,GAAS,EAAE,GAAG,KAAA,EAAM;AAG1B,MAAA,IAAI,MAAA,CAAO,EAAA,KAAO,MAAA,IAAa,QAAA,EAAU,SAAA,EAAW;AACnD,QAAA,MAAA,CAAO,EAAA,GAAK,SAAS,SAAA,EAAU;AAAA,MAChC;AAEA,MAAA,OAAO,MAAA;AAAA,IACR,CAAC;AAAA,GACF;AACD;AAKO,SAAS,oBAAA,GAA6C;AAG5D,EAAA,OAAO,CAAC,SAAuB,IAAA,CAAsB,EAAA;AACtD;AAMO,SAAS,uBAGd,MAAA,EA+BA;AAUD,EAAA,MAAM,EAAE,MAAA,EAAQ,KAAA,EAAO,GAAG,MAAK,GAAI,MAAA;AACnC,EAAA,OAAO,6BAAA,CAA8C;AAAA,IACpD,GAAG,IAAA;AAAA;AAAA,IAEH,MAAA,EAAQ,CAAC,IAAA,KAAgB,KAAA,CAAM,IAAI;AAAA,GACnC,CAAA;AACF","file":"chunk-TOYHUPFU.js","sourcesContent":["import type { CollectionUtils } from \"@firtoz/db-helpers\";\nimport {\n\ttype GenericBaseSyncConfig,\n\ttype GenericSyncBackend,\n\ttype GenericSyncFunctionResult,\n\tcreateGenericSyncFunction,\n\tcreateGenericCollectionConfig,\n\tUSE_DEDUPE as _USE_DEDUPE,\n} from \"@firtoz/db-helpers\";\nimport { type Table, SQL, getTableColumns } from \"drizzle-orm\";\nimport type { BuildSchema } from \"drizzle-valibot\";\nimport { createInsertSchema } from \"drizzle-valibot\";\nimport * as v from \"valibot\";\nimport type {\n\tCollection,\n\tUtilsRecord,\n\tCollectionConfig,\n\tInferSchemaOutput,\n\tSyncMode,\n} from \"@tanstack/db\";\n\n/**\n * Utility type for branded IDs\n */\nexport type Branded<T, Brand> = T & { __brand: Brand };\n\nexport type TableId<TTableName extends string> = Branded<\n\tstring,\n\t`${TTableName}_id`\n>;\n\n/**\n * Utility type to extract the ID type from a table\n */\nexport type IdOf<TTable extends Table> = TTable extends {\n\t$inferSelect: { id: infer TId extends string | number };\n}\n\t? TId\n\t: string | number;\n\n/**\n * Utility function to safely create branded IDs\n */\nexport function makeId<TTable extends Table>(\n\t_table: TTable,\n\tvalue: string,\n): IdOf<TTable> {\n\treturn value as IdOf<TTable>;\n}\n\n/**\n * Select schema type helper\n */\nexport type SelectSchema<TTable extends Table> = BuildSchema<\n\t\"select\",\n\tTTable[\"_\"][\"columns\"],\n\tundefined\n>;\n\n/**\n * Insert schema type helper\n */\nexport type InsertSchema<TTable extends Table> = BuildSchema<\n\t\"insert\",\n\tTTable[\"_\"][\"columns\"],\n\tundefined\n>;\n\n/**\n * Schema type with insert input (optionals for defaults) and select output (all fields present).\n * Represents the standard input/output pair for collection schemas.\n */\nexport type InsertToSelectSchema<TTable extends Table> = v.GenericSchema<\n\tv.InferInput<InsertSchema<TTable>>,\n\tv.InferOutput<SelectSchema<TTable>>\n>;\n\n/**\n * Helper type to get the table from schema by name\n */\nexport type GetTableFromSchema<\n\tTSchema extends Record<string, unknown>,\n\tTTableName extends keyof TSchema,\n> = TSchema[TTableName] extends Table ? TSchema[TTableName] : never;\n\n/**\n * Helper type to infer the collection type from table\n * This provides proper typing for Collection insert/update operations\n */\nexport type InferCollectionFromTable<TTable extends Table> = Collection<\n\tTTable[\"$inferSelect\"],\n\tIdOf<TTable>,\n\tUtilsRecord,\n\tInsertToSelectSchema<TTable>,\n\tOmit<\n\t\tTTable[\"$inferInsert\"],\n\t\t\"id\"\n\t\t// \"createdAt\" | \"updatedAt\" | \"deletedAt\" | \"id\"\n\t> & {\n\t\tid?: IdOf<TTable>;\n\t}\n>;\n\nexport const USE_DEDUPE = _USE_DEDUPE;\n\n/**\n * Base configuration for sync lifecycle management.\n * Extends the generic (Drizzle-free) config with a Drizzle table reference.\n */\nexport interface BaseSyncConfig<TTable extends Table>\n\textends GenericBaseSyncConfig<InferSchemaOutput<SelectSchema<TTable>>> {\n\ttable: TTable;\n}\n\n/**\n * Backend-specific implementations required for sync.\n * Drizzle-typed alias for GenericSyncBackend.\n */\nexport type SyncBackend<TTable extends Table> = GenericSyncBackend<\n\tInferSchemaOutput<SelectSchema<TTable>>\n>;\n\n/**\n * Return type for createSyncFunction.\n * Drizzle-typed alias for GenericSyncFunctionResult.\n */\nexport type SyncFunctionResult<TTable extends Table> =\n\tGenericSyncFunctionResult<InferSchemaOutput<SelectSchema<TTable>>>;\n\n/**\n * Creates the sync function with common lifecycle management.\n * Delegates to the generic (Drizzle-free) implementation in @firtoz/db-helpers.\n */\nexport function createSyncFunction<TTable extends Table>(\n\tconfig: BaseSyncConfig<TTable>,\n\tbackend: SyncBackend<TTable>,\n): SyncFunctionResult<TTable> {\n\treturn createGenericSyncFunction(config, backend);\n}\n\n/**\n * Creates an insert schema with default value handling\n * Validates that SQL expressions are not used for defaults (IndexedDB compatibility)\n */\nexport function createInsertSchemaWithDefaults<TTable extends Table>(\n\ttable: TTable,\n): InsertToSelectSchema<TTable> {\n\tconst insertSchema = createInsertSchema(table);\n\tconst columns = getTableColumns(table);\n\n\t// Validate that no SQL expressions are used as defaults\n\tfor (const columnName in columns) {\n\t\tconst column = columns[columnName];\n\n\t\tlet defaultValue: unknown | undefined;\n\t\tif (column.defaultFn) {\n\t\t\tdefaultValue = column.defaultFn();\n\t\t} else if (column.default !== undefined) {\n\t\t\tdefaultValue = column.default;\n\t\t}\n\n\t\tif (defaultValue instanceof SQL) {\n\t\t\tthrow new Error(\n\t\t\t\t`Default value for column ${columnName} is a SQL expression, which is not supported for IndexedDB`,\n\t\t\t);\n\t\t}\n\t}\n\n\t// Transform the schema to apply defaults\n\treturn v.pipe(\n\t\tinsertSchema,\n\t\tv.transform((input) => {\n\t\t\tconst result = { ...input } as Record<string, unknown>;\n\n\t\t\tfor (const columnName in columns) {\n\t\t\t\tconst column = columns[columnName];\n\t\t\t\tif (result[columnName] !== undefined) continue;\n\n\t\t\t\tlet defaultValue: unknown | undefined;\n\t\t\t\tif (column.defaultFn) {\n\t\t\t\t\tdefaultValue = column.defaultFn();\n\t\t\t\t} else if (column.default !== undefined) {\n\t\t\t\t\tdefaultValue = column.default;\n\t\t\t\t}\n\n\t\t\t\tif (defaultValue instanceof SQL) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Default value for column ${columnName} is a SQL expression, which is not supported for IndexedDB`,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tif (defaultValue !== undefined) {\n\t\t\t\t\tresult[columnName] = defaultValue;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (column.notNull) {\n\t\t\t\t\tthrow new Error(`Column ${columnName} is not nullable`);\n\t\t\t\t}\n\n\t\t\t\tresult[columnName] = null;\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}),\n\t) as InsertToSelectSchema<TTable>;\n}\n\n/**\n * Creates a minimal insert schema that only applies ID defaults\n * Other defaults (like timestamps) are handled by the database\n */\nexport function createInsertSchemaWithIdDefault<TTable extends Table>(\n\ttable: TTable,\n): InsertToSelectSchema<TTable> {\n\tconst insertSchema = createInsertSchema(table);\n\tconst columns = getTableColumns(table);\n\tconst idColumn = columns.id;\n\n\treturn v.pipe(\n\t\tinsertSchema,\n\t\tv.transform((input) => {\n\t\t\tconst result = { ...input } as Record<string, unknown>;\n\n\t\t\t// Apply ID default if missing\n\t\t\tif (result.id === undefined && idColumn?.defaultFn) {\n\t\t\t\tresult.id = idColumn.defaultFn();\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}),\n\t) as InsertToSelectSchema<TTable>;\n}\n\n/**\n * Standard getKey function for collections\n */\nexport function createGetKeyFunction<TTable extends Table>() {\n\ttype TItem = InferSchemaOutput<SelectSchema<TTable>>;\n\ttype TKey = IdOf<TTable>;\n\treturn (item: TItem): TKey => (item as { id: TKey }).id;\n}\n\n/**\n * Base collection config factory.\n * Delegates to the generic (Drizzle-free) implementation in @firtoz/db-helpers.\n */\nexport function createCollectionConfig<\n\tTTable extends Table,\n\tTSchema extends v.GenericSchema<unknown>,\n>(config: {\n\tschema: TSchema;\n\tgetKey: (item: InferSchemaOutput<SelectSchema<TTable>>) => IdOf<TTable>;\n\tsyncResult: SyncFunctionResult<TTable>;\n\tonInsert?: CollectionConfig<\n\t\tInferSchemaOutput<SelectSchema<TTable>>,\n\t\tstring,\n\t\tTSchema\n\t>[\"onInsert\"];\n\tonUpdate?: CollectionConfig<\n\t\tInferSchemaOutput<SelectSchema<TTable>>,\n\t\tstring,\n\t\tTSchema\n\t>[\"onUpdate\"];\n\tonDelete?: CollectionConfig<\n\t\tInferSchemaOutput<SelectSchema<TTable>>,\n\t\tstring,\n\t\tTSchema\n\t>[\"onDelete\"];\n\tsyncMode?: SyncMode;\n}): Omit<\n\tCollectionConfig<\n\t\tInferSchemaOutput<SelectSchema<TTable>>,\n\t\tIdOf<TTable>,\n\t\tTSchema,\n\t\tCollectionUtils<InferSchemaOutput<SelectSchema<TTable>>>\n\t>,\n\t\"utils\"\n> & {\n\tschema: TSchema;\n\tutils: CollectionUtils<InferSchemaOutput<SelectSchema<TTable>>>;\n} {\n\ttype TItem = InferSchemaOutput<SelectSchema<TTable>>;\n\ttype ReturnType = Omit<\n\t\tCollectionConfig<TItem, IdOf<TTable>, TSchema, CollectionUtils<TItem>>,\n\t\t\"utils\"\n\t> & {\n\t\tschema: TSchema;\n\t\tutils: CollectionUtils<TItem>;\n\t};\n\n\tconst { getKey: getId, ...rest } = config;\n\treturn createGenericCollectionConfig<TItem, TSchema>({\n\t\t...rest,\n\t\t// Generic sync is typed with string keys; runtime id may be number — same value as Drizzle row id.\n\t\tgetKey: (item: TItem) => getId(item) as string,\n\t}) as ReturnType;\n}\n"]}
@@ -0,0 +1,106 @@
1
+ import * as drizzle_orm from 'drizzle-orm';
2
+ import { Table } from 'drizzle-orm';
3
+ import * as drizzle_valibot from 'drizzle-valibot';
4
+ import { BuildSchema } from 'drizzle-valibot';
5
+ import { GenericBaseSyncConfig, GenericSyncBackend, GenericSyncFunctionResult, CollectionUtils } from '@firtoz/db-helpers';
6
+ import * as v from 'valibot';
7
+ import { Collection, UtilsRecord, InferSchemaOutput, CollectionConfig, SyncMode } from '@tanstack/db';
8
+
9
+ /**
10
+ * Utility type for branded IDs
11
+ */
12
+ type Branded<T, Brand> = T & {
13
+ __brand: Brand;
14
+ };
15
+ type TableId<TTableName extends string> = Branded<string, `${TTableName}_id`>;
16
+ /**
17
+ * Utility type to extract the ID type from a table
18
+ */
19
+ type IdOf<TTable extends Table> = TTable extends {
20
+ $inferSelect: {
21
+ id: infer TId extends string | number;
22
+ };
23
+ } ? TId : string | number;
24
+ /**
25
+ * Utility function to safely create branded IDs
26
+ */
27
+ declare function makeId<TTable extends Table>(_table: TTable, value: string): IdOf<TTable>;
28
+ /**
29
+ * Select schema type helper
30
+ */
31
+ type SelectSchema<TTable extends Table> = BuildSchema<"select", TTable["_"]["columns"], undefined>;
32
+ /**
33
+ * Insert schema type helper
34
+ */
35
+ type InsertSchema<TTable extends Table> = BuildSchema<"insert", TTable["_"]["columns"], undefined>;
36
+ /**
37
+ * Schema type with insert input (optionals for defaults) and select output (all fields present).
38
+ * Represents the standard input/output pair for collection schemas.
39
+ */
40
+ type InsertToSelectSchema<TTable extends Table> = v.GenericSchema<v.InferInput<InsertSchema<TTable>>, v.InferOutput<SelectSchema<TTable>>>;
41
+ /**
42
+ * Helper type to get the table from schema by name
43
+ */
44
+ type GetTableFromSchema<TSchema extends Record<string, unknown>, TTableName extends keyof TSchema> = TSchema[TTableName] extends Table ? TSchema[TTableName] : never;
45
+ /**
46
+ * Helper type to infer the collection type from table
47
+ * This provides proper typing for Collection insert/update operations
48
+ */
49
+ type InferCollectionFromTable<TTable extends Table> = Collection<TTable["$inferSelect"], IdOf<TTable>, UtilsRecord, InsertToSelectSchema<TTable>, Omit<TTable["$inferInsert"], "id"> & {
50
+ id?: IdOf<TTable>;
51
+ }>;
52
+ declare const USE_DEDUPE: boolean;
53
+ /**
54
+ * Base configuration for sync lifecycle management.
55
+ * Extends the generic (Drizzle-free) config with a Drizzle table reference.
56
+ */
57
+ interface BaseSyncConfig<TTable extends Table> extends GenericBaseSyncConfig<InferSchemaOutput<SelectSchema<TTable>>> {
58
+ table: TTable;
59
+ }
60
+ /**
61
+ * Backend-specific implementations required for sync.
62
+ * Drizzle-typed alias for GenericSyncBackend.
63
+ */
64
+ type SyncBackend<TTable extends Table> = GenericSyncBackend<InferSchemaOutput<SelectSchema<TTable>>>;
65
+ /**
66
+ * Return type for createSyncFunction.
67
+ * Drizzle-typed alias for GenericSyncFunctionResult.
68
+ */
69
+ type SyncFunctionResult<TTable extends Table> = GenericSyncFunctionResult<InferSchemaOutput<SelectSchema<TTable>>>;
70
+ /**
71
+ * Creates the sync function with common lifecycle management.
72
+ * Delegates to the generic (Drizzle-free) implementation in @firtoz/db-helpers.
73
+ */
74
+ declare function createSyncFunction<TTable extends Table>(config: BaseSyncConfig<TTable>, backend: SyncBackend<TTable>): SyncFunctionResult<TTable>;
75
+ /**
76
+ * Creates an insert schema with default value handling
77
+ * Validates that SQL expressions are not used for defaults (IndexedDB compatibility)
78
+ */
79
+ declare function createInsertSchemaWithDefaults<TTable extends Table>(table: TTable): InsertToSelectSchema<TTable>;
80
+ /**
81
+ * Creates a minimal insert schema that only applies ID defaults
82
+ * Other defaults (like timestamps) are handled by the database
83
+ */
84
+ declare function createInsertSchemaWithIdDefault<TTable extends Table>(table: TTable): InsertToSelectSchema<TTable>;
85
+ /**
86
+ * Standard getKey function for collections
87
+ */
88
+ declare function createGetKeyFunction<TTable extends Table>(): (item: (Readonly<((((TTable["_"]["columns"] extends infer T_4 extends Record<string, any> ? { readonly [K_1 in keyof T_4 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_4[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_5 ? T_5 extends TRefinements[K_1 & keyof TRefinements] ? T_5 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_5> : v.NullableSchema<ReturnType<T_5>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_5 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_4[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_3 ? { [K in keyof T_3]: T_3[K]; } : never) extends infer T_2 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_2]: v.InferOutput<T_2[TKey_2]>; } : never) extends infer T_1 ? { [TKey_1 in keyof T_1]?: unknown; } : never) & Omit<((TTable["_"]["columns"] extends infer T_7 extends Record<string, any> ? { readonly [K_1 in keyof T_7 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_7[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_8 ? T_8 extends TRefinements[K_1 & keyof TRefinements] ? T_8 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_8> : v.NullableSchema<ReturnType<T_8>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_8 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_7[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_6 ? { [K in keyof T_6]: T_6[K]; } : never) extends infer T_5 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_5]: v.InferOutput<T_5[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_10 extends Record<string, any> ? { readonly [K_1 in keyof T_10 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_10[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_11 ? T_11 extends TRefinements[K_1 & keyof TRefinements] ? T_11 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_11> : v.NullableSchema<ReturnType<T_11>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_11 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_10[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_9 ? { [K in keyof T_9]: T_9[K]; } : never) extends infer T_8 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_8]: T_8[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_8[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_11 extends Record<string, any> ? { readonly [K_1 in keyof T_11 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_11[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_12 ? T_12 extends TRefinements[K_1 & keyof TRefinements] ? T_12 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_12> : v.NullableSchema<ReturnType<T_12>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_12 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_11[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> & Partial<Pick<((TTable["_"]["columns"] extends infer T_14 extends Record<string, any> ? { readonly [K_1 in keyof T_14 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_14[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_15 ? T_15 extends TRefinements[K_1 & keyof TRefinements] ? T_15 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_15> : v.NullableSchema<ReturnType<T_15>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_15 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_14[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_13 ? { [K in keyof T_13]: T_13[K]; } : never) extends infer T_12 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_12]: v.InferOutput<T_12[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_17 extends Record<string, any> ? { readonly [K_1 in keyof T_17 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_17[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_18 ? T_18 extends TRefinements[K_1 & keyof TRefinements] ? T_18 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_18> : v.NullableSchema<ReturnType<T_18>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_18 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_17[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_16 ? { [K in keyof T_16]: T_16[K]; } : never) extends infer T_15 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_15]: T_15[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_15[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_18 extends Record<string, any> ? { readonly [K_1 in keyof T_18 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_18[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_19 ? T_19 extends TRefinements[K_1 & keyof TRefinements] ? T_19 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_19> : v.NullableSchema<ReturnType<T_19>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_19 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_18[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>>> & Pick<((((TTable["_"]["columns"] extends infer T_22 extends Record<string, any> ? { readonly [K_1 in keyof T_22 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_22[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_23 ? T_23 extends TRefinements[K_1 & keyof TRefinements] ? T_23 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_23> : v.NullableSchema<ReturnType<T_23>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_23 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_22[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_21 ? { [K in keyof T_21]: T_21[K]; } : never) extends infer T_20 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_20]: v.InferOutput<T_20[TKey_2]>; } : never) extends infer T_19 ? { [TKey_1 in keyof T_19]?: unknown; } : never) & Omit<((TTable["_"]["columns"] extends infer T_25 extends Record<string, any> ? { readonly [K_1 in keyof T_25 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_25[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_26 ? T_26 extends TRefinements[K_1 & keyof TRefinements] ? T_26 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_26> : v.NullableSchema<ReturnType<T_26>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_26 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_25[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_24 ? { [K in keyof T_24]: T_24[K]; } : never) extends infer T_23 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_23]: v.InferOutput<T_23[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_28 extends Record<string, any> ? { readonly [K_1 in keyof T_28 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_28[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_29 ? T_29 extends TRefinements[K_1 & keyof TRefinements] ? T_29 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_29> : v.NullableSchema<ReturnType<T_29>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_29 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_28[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_27 ? { [K in keyof T_27]: T_27[K]; } : never) extends infer T_26 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_26]: T_26[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_26[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_29 extends Record<string, any> ? { readonly [K_1 in keyof T_29 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_29[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_30 ? T_30 extends TRefinements[K_1 & keyof TRefinements] ? T_30 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_30> : v.NullableSchema<ReturnType<T_30>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_30 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_29[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> & Partial<Pick<((TTable["_"]["columns"] extends infer T_32 extends Record<string, any> ? { readonly [K_1 in keyof T_32 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_32[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_33 ? T_33 extends TRefinements[K_1 & keyof TRefinements] ? T_33 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_33> : v.NullableSchema<ReturnType<T_33>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_33 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_32[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_31 ? { [K in keyof T_31]: T_31[K]; } : never) extends infer T_30 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_30]: v.InferOutput<T_30[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_35 extends Record<string, any> ? { readonly [K_1 in keyof T_35 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_35[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_36 ? T_36 extends TRefinements[K_1 & keyof TRefinements] ? T_36 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_36> : v.NullableSchema<ReturnType<T_36>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_36 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_35[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_34 ? { [K in keyof T_34]: T_34[K]; } : never) extends infer T_33 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_33]: T_33[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_33[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_36 extends Record<string, any> ? { readonly [K_1 in keyof T_36 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_36[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_37 ? T_37 extends TRefinements[K_1 & keyof TRefinements] ? T_37 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_37> : v.NullableSchema<ReturnType<T_37>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_37 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_36[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>>, Exclude<keyof (TTable["_"]["columns"] extends infer T_37 extends Record<string, any> ? { readonly [K_1 in keyof T_37 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_37[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_38 ? T_38 extends TRefinements[K_1 & keyof TRefinements] ? T_38 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_38> : v.NullableSchema<ReturnType<T_38>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_38 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_37[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never), (((TTable["_"]["columns"] extends infer T_40 extends Record<string, any> ? { readonly [K_1 in keyof T_40 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_40[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_41 ? T_41 extends TRefinements[K_1 & keyof TRefinements] ? T_41 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_41> : v.NullableSchema<ReturnType<T_41>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_41 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_40[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_39 ? { [K in keyof T_39]: T_39[K]; } : never) extends infer T_38 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_4 in keyof T_38]: T_38[TKey_4] extends v.SchemaWithPipe<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> | v.SchemaWithPipeAsync<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> ? v.ReadonlyAction<any> extends TPipe[number] ? TKey_4 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_41 extends Record<string, any> ? { readonly [K_1 in keyof T_41 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_41[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_42 ? T_42 extends TRefinements[K_1 & keyof TRefinements] ? T_42 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_42> : v.NullableSchema<ReturnType<T_42>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_42 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_41[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> | Exclude<(((TTable["_"]["columns"] extends infer T_44 extends Record<string, any> ? { readonly [K_1 in keyof T_44 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_44[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_45 ? T_45 extends TRefinements[K_1 & keyof TRefinements] ? T_45 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_45> : v.NullableSchema<ReturnType<T_45>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_45 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_44[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_43 ? { [K in keyof T_43]: T_43[K]; } : never) extends infer T_42 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_42]: T_42[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_42[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_45 extends Record<string, any> ? { readonly [K_1 in keyof T_45 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_45[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_46 ? T_46 extends TRefinements[K_1 & keyof TRefinements] ? T_46 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_46> : v.NullableSchema<ReturnType<T_46>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_46 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_45[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)], (((TTable["_"]["columns"] extends infer T_48 extends Record<string, any> ? { readonly [K_1 in keyof T_48 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_48[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_49 ? T_49 extends TRefinements[K_1 & keyof TRefinements] ? T_49 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_49> : v.NullableSchema<ReturnType<T_49>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_49 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_48[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_47 ? { [K in keyof T_47]: T_47[K]; } : never) extends infer T_46 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_4 in keyof T_46]: T_46[TKey_4] extends v.SchemaWithPipe<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> | v.SchemaWithPipeAsync<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> ? v.ReadonlyAction<any> extends TPipe[number] ? TKey_4 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_49 extends Record<string, any> ? { readonly [K_1 in keyof T_49 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_49[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_50 ? T_50 extends TRefinements[K_1 & keyof TRefinements] ? T_50 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_50> : v.NullableSchema<ReturnType<T_50>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_50 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_49[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> | Exclude<Exclude<keyof (TTable["_"]["columns"] extends infer T_50 extends Record<string, any> ? { readonly [K_1 in keyof T_50 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_50[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_51 ? T_51 extends TRefinements[K_1 & keyof TRefinements] ? T_51 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_51> : v.NullableSchema<ReturnType<T_51>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_51 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_50[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never), (((TTable["_"]["columns"] extends infer T_53 extends Record<string, any> ? { readonly [K_1 in keyof T_53 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_53[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_54 ? T_54 extends TRefinements[K_1 & keyof TRefinements] ? T_54 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_54> : v.NullableSchema<ReturnType<T_54>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_54 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_53[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_52 ? { [K in keyof T_52]: T_52[K]; } : never) extends infer T_51 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_51]: T_51[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_51[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_54 extends Record<string, any> ? { readonly [K_1 in keyof T_54 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_54[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_55 ? T_55 extends TRefinements[K_1 & keyof TRefinements] ? T_55 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_55> : v.NullableSchema<ReturnType<T_55>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_55 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_54[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>, (((TTable["_"]["columns"] extends infer T_57 extends Record<string, any> ? { readonly [K_1 in keyof T_57 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_57[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_58 ? T_58 extends TRefinements[K_1 & keyof TRefinements] ? T_58 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_58> : v.NullableSchema<ReturnType<T_58>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_58 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_57[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_56 ? { [K in keyof T_56]: T_56[K]; } : never) extends infer T_55 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_4 in keyof T_55]: T_55[TKey_4] extends v.SchemaWithPipe<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> | v.SchemaWithPipeAsync<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> ? v.ReadonlyAction<any> extends TPipe[number] ? TKey_4 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_58 extends Record<string, any> ? { readonly [K_1 in keyof T_58 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_58[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_59 ? T_59 extends TRefinements[K_1 & keyof TRefinements] ? T_59 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_59> : v.NullableSchema<ReturnType<T_59>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_59 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_58[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>> extends infer T ? { [TKey in keyof T]: T[TKey]; } : never) extends object ? Readonly<((((TTable["_"]["columns"] extends infer T_63 extends Record<string, any> ? { readonly [K_1 in keyof T_63 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_63[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_64 ? T_64 extends TRefinements[K_1 & keyof TRefinements] ? T_64 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_64> : v.NullableSchema<ReturnType<T_64>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_64 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_63[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_62 ? { [K in keyof T_62]: T_62[K]; } : never) extends infer T_61 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_61]: v.InferOutput<T_61[TKey_2]>; } : never) extends infer T_60 ? { [TKey_1 in keyof T_60]?: unknown; } : never) & Omit<((TTable["_"]["columns"] extends infer T_66 extends Record<string, any> ? { readonly [K_1 in keyof T_66 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_66[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_67 ? T_67 extends TRefinements[K_1 & keyof TRefinements] ? T_67 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_67> : v.NullableSchema<ReturnType<T_67>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_67 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_66[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_65 ? { [K in keyof T_65]: T_65[K]; } : never) extends infer T_64 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_64]: v.InferOutput<T_64[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_69 extends Record<string, any> ? { readonly [K_1 in keyof T_69 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_69[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_70 ? T_70 extends TRefinements[K_1 & keyof TRefinements] ? T_70 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_70> : v.NullableSchema<ReturnType<T_70>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_70 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_69[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_68 ? { [K in keyof T_68]: T_68[K]; } : never) extends infer T_67 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_67]: T_67[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_67[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_70 extends Record<string, any> ? { readonly [K_1 in keyof T_70 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_70[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_71 ? T_71 extends TRefinements[K_1 & keyof TRefinements] ? T_71 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_71> : v.NullableSchema<ReturnType<T_71>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_71 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_70[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> & Partial<Pick<((TTable["_"]["columns"] extends infer T_73 extends Record<string, any> ? { readonly [K_1 in keyof T_73 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_73[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_74 ? T_74 extends TRefinements[K_1 & keyof TRefinements] ? T_74 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_74> : v.NullableSchema<ReturnType<T_74>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_74 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_73[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_72 ? { [K in keyof T_72]: T_72[K]; } : never) extends infer T_71 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_71]: v.InferOutput<T_71[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_76 extends Record<string, any> ? { readonly [K_1 in keyof T_76 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_76[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_77 ? T_77 extends TRefinements[K_1 & keyof TRefinements] ? T_77 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_77> : v.NullableSchema<ReturnType<T_77>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_77 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_76[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_75 ? { [K in keyof T_75]: T_75[K]; } : never) extends infer T_74 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_74]: T_74[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_74[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_77 extends Record<string, any> ? { readonly [K_1 in keyof T_77 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_77[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_78 ? T_78 extends TRefinements[K_1 & keyof TRefinements] ? T_78 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_78> : v.NullableSchema<ReturnType<T_78>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_78 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_77[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>>> & Pick<((((TTable["_"]["columns"] extends infer T_81 extends Record<string, any> ? { readonly [K_1 in keyof T_81 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_81[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_82 ? T_82 extends TRefinements[K_1 & keyof TRefinements] ? T_82 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_82> : v.NullableSchema<ReturnType<T_82>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_82 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_81[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_80 ? { [K in keyof T_80]: T_80[K]; } : never) extends infer T_79 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_79]: v.InferOutput<T_79[TKey_2]>; } : never) extends infer T_78 ? { [TKey_1 in keyof T_78]?: unknown; } : never) & Omit<((TTable["_"]["columns"] extends infer T_84 extends Record<string, any> ? { readonly [K_1 in keyof T_84 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_84[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_85 ? T_85 extends TRefinements[K_1 & keyof TRefinements] ? T_85 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_85> : v.NullableSchema<ReturnType<T_85>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_85 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_84[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_83 ? { [K in keyof T_83]: T_83[K]; } : never) extends infer T_82 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_82]: v.InferOutput<T_82[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_87 extends Record<string, any> ? { readonly [K_1 in keyof T_87 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_87[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_88 ? T_88 extends TRefinements[K_1 & keyof TRefinements] ? T_88 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_88> : v.NullableSchema<ReturnType<T_88>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_88 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_87[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_86 ? { [K in keyof T_86]: T_86[K]; } : never) extends infer T_85 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_85]: T_85[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_85[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_88 extends Record<string, any> ? { readonly [K_1 in keyof T_88 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_88[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_89 ? T_89 extends TRefinements[K_1 & keyof TRefinements] ? T_89 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_89> : v.NullableSchema<ReturnType<T_89>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_89 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_88[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> & Partial<Pick<((TTable["_"]["columns"] extends infer T_91 extends Record<string, any> ? { readonly [K_1 in keyof T_91 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_91[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_92 ? T_92 extends TRefinements[K_1 & keyof TRefinements] ? T_92 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_92> : v.NullableSchema<ReturnType<T_92>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_92 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_91[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_90 ? { [K in keyof T_90]: T_90[K]; } : never) extends infer T_89 extends v.ObjectEntries | v.ObjectEntriesAsync ? { -readonly [TKey_2 in keyof T_89]: v.InferOutput<T_89[TKey_2]>; } : never, (((TTable["_"]["columns"] extends infer T_94 extends Record<string, any> ? { readonly [K_1 in keyof T_94 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_94[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_95 ? T_95 extends TRefinements[K_1 & keyof TRefinements] ? T_95 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_95> : v.NullableSchema<ReturnType<T_95>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_95 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_94[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_93 ? { [K in keyof T_93]: T_93[K]; } : never) extends infer T_92 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_92]: T_92[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_92[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_95 extends Record<string, any> ? { readonly [K_1 in keyof T_95 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_95[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_96 ? T_96 extends TRefinements[K_1 & keyof TRefinements] ? T_96 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_96> : v.NullableSchema<ReturnType<T_96>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_96 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_95[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>>, Exclude<keyof (TTable["_"]["columns"] extends infer T_96 extends Record<string, any> ? { readonly [K_1 in keyof T_96 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_96[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_97 ? T_97 extends TRefinements[K_1 & keyof TRefinements] ? T_97 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_97> : v.NullableSchema<ReturnType<T_97>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_97 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_96[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never), (((TTable["_"]["columns"] extends infer T_99 extends Record<string, any> ? { readonly [K_1 in keyof T_99 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_99[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_100 ? T_100 extends TRefinements[K_1 & keyof TRefinements] ? T_100 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_100> : v.NullableSchema<ReturnType<T_100>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_100 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_99[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_98 ? { [K in keyof T_98]: T_98[K]; } : never) extends infer T_97 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_4 in keyof T_97]: T_97[TKey_4] extends v.SchemaWithPipe<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> | v.SchemaWithPipeAsync<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> ? v.ReadonlyAction<any> extends TPipe[number] ? TKey_4 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_100 extends Record<string, any> ? { readonly [K_1 in keyof T_100 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_100[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_101 ? T_101 extends TRefinements[K_1 & keyof TRefinements] ? T_101 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_101> : v.NullableSchema<ReturnType<T_101>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_101 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_100[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> | Exclude<(((TTable["_"]["columns"] extends infer T_103 extends Record<string, any> ? { readonly [K_1 in keyof T_103 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_103[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_104 ? T_104 extends TRefinements[K_1 & keyof TRefinements] ? T_104 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_104> : v.NullableSchema<ReturnType<T_104>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_104 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_103[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_102 ? { [K in keyof T_102]: T_102[K]; } : never) extends infer T_101 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_101]: T_101[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_101[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_104 extends Record<string, any> ? { readonly [K_1 in keyof T_104 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_104[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_105 ? T_105 extends TRefinements[K_1 & keyof TRefinements] ? T_105 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_105> : v.NullableSchema<ReturnType<T_105>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_105 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_104[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)], (((TTable["_"]["columns"] extends infer T_107 extends Record<string, any> ? { readonly [K_1 in keyof T_107 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_107[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_108 ? T_108 extends TRefinements[K_1 & keyof TRefinements] ? T_108 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_108> : v.NullableSchema<ReturnType<T_108>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_108 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_107[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_106 ? { [K in keyof T_106]: T_106[K]; } : never) extends infer T_105 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_4 in keyof T_105]: T_105[TKey_4] extends v.SchemaWithPipe<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> | v.SchemaWithPipeAsync<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> ? v.ReadonlyAction<any> extends TPipe[number] ? TKey_4 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_108 extends Record<string, any> ? { readonly [K_1 in keyof T_108 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_108[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_109 ? T_109 extends TRefinements[K_1 & keyof TRefinements] ? T_109 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_109> : v.NullableSchema<ReturnType<T_109>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_109 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_108[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]> | Exclude<Exclude<keyof (TTable["_"]["columns"] extends infer T_109 extends Record<string, any> ? { readonly [K_1 in keyof T_109 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_109[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_110 ? T_110 extends TRefinements[K_1 & keyof TRefinements] ? T_110 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_110> : v.NullableSchema<ReturnType<T_110>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_110 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_109[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never), (((TTable["_"]["columns"] extends infer T_112 extends Record<string, any> ? { readonly [K_1 in keyof T_112 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_112[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_113 ? T_113 extends TRefinements[K_1 & keyof TRefinements] ? T_113 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_113> : v.NullableSchema<ReturnType<T_113>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_113 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_112[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_111 ? { [K in keyof T_111]: T_111[K]; } : never) extends infer T_110 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_3 in keyof T_110]: T_110[TKey_3] extends (v.ExactOptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchema<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, unknown>) | (v.ExactOptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.NullishSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown> | v.OptionalSchemaAsync<v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, unknown>) ? undefined extends T_110[TKey_3]["default"] ? TKey_3 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_113 extends Record<string, any> ? { readonly [K_1 in keyof T_113 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_113[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_114 ? T_114 extends TRefinements[K_1 & keyof TRefinements] ? T_114 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_114> : v.NullableSchema<ReturnType<T_114>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_114 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_113[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>, (((TTable["_"]["columns"] extends infer T_116 extends Record<string, any> ? { readonly [K_1 in keyof T_116 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_116[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_117 ? T_117 extends TRefinements[K_1 & keyof TRefinements] ? T_117 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_117> : v.NullableSchema<ReturnType<T_117>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_117 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_116[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never) extends infer T_115 ? { [K in keyof T_115]: T_115[K]; } : never) extends infer T_114 extends v.ObjectEntries | v.ObjectEntriesAsync ? { [TKey_4 in keyof T_114]: T_114[TKey_4] extends v.SchemaWithPipe<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> | v.SchemaWithPipeAsync<infer TPipe extends readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>>, ...v.PipeItem<any, unknown, v.BaseIssue<unknown>>[]] & readonly [v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> | v.BaseSchemaAsync<unknown, unknown, v.BaseIssue<unknown>>, ...(v.PipeItem<any, unknown, v.BaseIssue<unknown>> | v.PipeItemAsync<any, unknown, v.BaseIssue<unknown>>)[]]> ? v.ReadonlyAction<any> extends TPipe[number] ? TKey_4 : never : never; } : never)[keyof (TTable["_"]["columns"] extends infer T_117 extends Record<string, any> ? { readonly [K_1 in keyof T_117 as drizzle_valibot.ColumnIsGeneratedAlwaysAs<TTable["_"]["columns"][K_1]> extends true ? never : K_1]: T_117[K_1] extends infer TColumn extends drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object> ? (TRefinements extends object ? TRefinements[drizzle_orm.Assume<K_1, string>] extends v.GenericSchema | ((schema: any) => any) ? true : false : false) extends true ? drizzle_orm.Assume<TRefinements[K_1 & keyof TRefinements] extends infer T_118 ? T_118 extends TRefinements[K_1 & keyof TRefinements] ? T_118 extends (schema: any) => v.GenericSchema ? (TColumn["_"]["notNull"] extends true ? ReturnType<T_118> : v.NullableSchema<ReturnType<T_118>, undefined>) extends infer TSchema ? TType extends "update" ? v.OptionalSchema<drizzle_orm.Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : T_118 : never : never, v.GenericSchema> : drizzle_valibot.HandleColumn<TType, TColumn> : T_117[K_1] extends infer TObject extends Table<drizzle_orm.TableConfig<drizzle_orm.Column<any, object, object>>> | drizzle_orm.SelectedFieldsFlat<drizzle_orm.Column<drizzle_orm.ColumnBaseConfig<drizzle_orm.ColumnDataType, string>, object, object>> | drizzle_orm.View<string, boolean, drizzle_orm.ColumnsSelection> ? BuildSchema<TType, drizzle_valibot.GetSelection<TObject>, TRefinements extends object ? TRefinements[K_1 & keyof TRefinements] : undefined> : v.AnySchema; } : never)]>> extends infer T_59 ? { [TKey in keyof T_59]: T_59[TKey]; } : never : Record<string, unknown>) => IdOf<TTable>;
89
+ /**
90
+ * Base collection config factory.
91
+ * Delegates to the generic (Drizzle-free) implementation in @firtoz/db-helpers.
92
+ */
93
+ declare function createCollectionConfig<TTable extends Table, TSchema extends v.GenericSchema<unknown>>(config: {
94
+ schema: TSchema;
95
+ getKey: (item: InferSchemaOutput<SelectSchema<TTable>>) => IdOf<TTable>;
96
+ syncResult: SyncFunctionResult<TTable>;
97
+ onInsert?: CollectionConfig<InferSchemaOutput<SelectSchema<TTable>>, string, TSchema>["onInsert"];
98
+ onUpdate?: CollectionConfig<InferSchemaOutput<SelectSchema<TTable>>, string, TSchema>["onUpdate"];
99
+ onDelete?: CollectionConfig<InferSchemaOutput<SelectSchema<TTable>>, string, TSchema>["onDelete"];
100
+ syncMode?: SyncMode;
101
+ }): Omit<CollectionConfig<InferSchemaOutput<SelectSchema<TTable>>, IdOf<TTable>, TSchema, CollectionUtils<InferSchemaOutput<SelectSchema<TTable>>>>, "utils"> & {
102
+ schema: TSchema;
103
+ utils: CollectionUtils<InferSchemaOutput<SelectSchema<TTable>>>;
104
+ };
105
+
106
+ export { type BaseSyncConfig, type Branded, type GetTableFromSchema, type IdOf, type InferCollectionFromTable, type InsertSchema, type InsertToSelectSchema, type SelectSchema, type SyncBackend, type SyncFunctionResult, type TableId, USE_DEDUPE, createCollectionConfig, createGetKeyFunction, createInsertSchemaWithDefaults, createInsertSchemaWithIdDefault, createSyncFunction, makeId };
@@ -0,0 +1,3 @@
1
+ export { USE_DEDUPE, createCollectionConfig, createGetKeyFunction, createInsertSchemaWithDefaults, createInsertSchemaWithIdDefault, createSyncFunction, makeId } from './chunk-TOYHUPFU.js';
2
+ //# sourceMappingURL=collection-utils.js.map
3
+ //# sourceMappingURL=collection-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"collection-utils.js"}
@@ -0,0 +1,19 @@
1
+ import { CollectionUtils } from '@firtoz/db-helpers';
2
+ import { Collection, InferSchemaOutput, InferSchemaInput } from '@tanstack/db';
3
+ import { SelectSchema, IdOf, InsertToSelectSchema } from './collection-utils.js';
4
+ import { TableWithRequiredFields } from './syncableTable.js';
5
+ import 'drizzle-orm';
6
+ import 'drizzle-valibot';
7
+ import 'valibot';
8
+ import 'drizzle-orm/sqlite-core';
9
+
10
+ /**
11
+ * TanStack {@link Collection} for a syncable Drizzle SQLite table (`syncableTable` columns).
12
+ *
13
+ * Shared by `@firtoz/drizzle-sqlite-wasm` (async driver) and `@firtoz/drizzle-durable-sqlite`
14
+ * (Durable Object sync driver). Import this type from `@firtoz/drizzle-utils` rather than
15
+ * duplicating it per package.
16
+ */
17
+ type DrizzleSqliteTableCollection<TTable extends TableWithRequiredFields> = Collection<InferSchemaOutput<SelectSchema<TTable>>, IdOf<TTable>, CollectionUtils<InferSchemaOutput<SelectSchema<TTable>>>, InsertToSelectSchema<TTable>, InferSchemaInput<InsertToSelectSchema<TTable>>>;
18
+
19
+ export type { DrizzleSqliteTableCollection };
@@ -0,0 +1,3 @@
1
+
2
+ //# sourceMappingURL=drizzle-sqlite-table-collection.js.map
3
+ //# sourceMappingURL=drizzle-sqlite-table-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"drizzle-sqlite-table-collection.js"}
@@ -0,0 +1,13 @@
1
+ export { CheckConstraintDefinition, ColumnDefinition, CompositePrimaryKeyDefinition, EnumDefinition, ForeignKeyDefinition, IndexDefinition, Journal, JournalEntry, Snapshot, SnapshotInternal, SnapshotMeta, SqliteColumnType, TableDefinition, UniqueConstraintDefinition, ViewDefinition } from './types.js';
2
+ export { BaseSyncConfig, Branded, GetTableFromSchema, IdOf, InferCollectionFromTable, InsertSchema, InsertToSelectSchema, SelectSchema, SyncBackend, SyncFunctionResult, TableId, USE_DEDUPE, createCollectionConfig, createGetKeyFunction, createInsertSchemaWithDefaults, createInsertSchemaWithIdDefault, createSyncFunction, makeId } from './collection-utils.js';
3
+ export { TableWithRequiredFields, createdAtColumn, deletedAtColumn, syncableTable, updatedAtColumn } from './syncableTable.js';
4
+ export { DrizzleSqliteTableCollection } from './drizzle-sqlite-table-collection.js';
5
+ export { SQLInterceptor, SQLOperation } from './sqlite-table-sync/types.js';
6
+ export { convertBasicExpressionToDrizzle, convertOrderByToDrizzle } from './sqlite-table-sync/convert-ir.js';
7
+ export { SqliteDriverMode, SqliteTableSyncBackendConfig, createSqliteTableSyncBackend } from './sqlite-table-sync/sqlite-table-sync-backend.js';
8
+ import 'drizzle-orm';
9
+ import 'drizzle-valibot';
10
+ import '@firtoz/db-helpers';
11
+ import 'valibot';
12
+ import '@tanstack/db';
13
+ import 'drizzle-orm/sqlite-core';
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ export { USE_DEDUPE, createCollectionConfig, createGetKeyFunction, createInsertSchemaWithDefaults, createInsertSchemaWithIdDefault, createSyncFunction, makeId } from './chunk-TOYHUPFU.js';
2
+ import './chunk-J7DNZ25N.js';
3
+ export { createSqliteTableSyncBackend } from './chunk-7RBDVFVG.js';
4
+ export { convertBasicExpressionToDrizzle, convertOrderByToDrizzle } from './chunk-JM254VLB.js';
5
+ export { createdAtColumn, deletedAtColumn, syncableTable, updatedAtColumn } from './chunk-LIICLRMB.js';
6
+ //# sourceMappingURL=index.js.map
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -0,0 +1,10 @@
1
+ import { IR } from '@tanstack/db';
2
+ import { Table, SQL } from 'drizzle-orm';
3
+
4
+ /**
5
+ * Converts TanStack DB IR BasicExpression to Drizzle SQL expression.
6
+ */
7
+ declare function convertBasicExpressionToDrizzle<TTable extends Table>(expression: IR.BasicExpression, table: TTable): SQL;
8
+ declare function convertOrderByToDrizzle<TTable extends Table>(orderBy: IR.OrderBy, table: TTable): SQL[];
9
+
10
+ export { convertBasicExpressionToDrizzle, convertOrderByToDrizzle };