kysely 0.18.1 → 0.19.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 (44) hide show
  1. package/README.md +22 -17
  2. package/dist/cjs/dialect/mysql/mysql-dialect-config.d.ts +24 -207
  3. package/dist/cjs/dialect/mysql/mysql-dialect.d.ts +22 -7
  4. package/dist/cjs/dialect/mysql/mysql-dialect.js +25 -9
  5. package/dist/cjs/dialect/mysql/mysql-driver.d.ts +2 -15
  6. package/dist/cjs/dialect/mysql/mysql-driver.js +4 -35
  7. package/dist/cjs/dialect/postgres/postgres-dialect-config.d.ts +25 -89
  8. package/dist/cjs/dialect/postgres/postgres-dialect.d.ts +21 -9
  9. package/dist/cjs/dialect/postgres/postgres-dialect.js +24 -11
  10. package/dist/cjs/dialect/postgres/postgres-driver.d.ts +2 -15
  11. package/dist/cjs/dialect/postgres/postgres-driver.js +5 -36
  12. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts +25 -28
  13. package/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +19 -3
  14. package/dist/cjs/dialect/sqlite/sqlite-dialect.js +19 -3
  15. package/dist/cjs/dialect/sqlite/sqlite-driver.js +3 -37
  16. package/dist/cjs/index.d.ts +153 -2
  17. package/dist/cjs/index.js +142 -2
  18. package/dist/cjs/migration/file-migration-provider.d.ts +21 -5
  19. package/dist/cjs/migration/file-migration-provider.js +14 -13
  20. package/dist/cjs/plugin/noop-plugin.d.ts +1 -1
  21. package/dist/esm/dialect/mysql/mysql-dialect-config.d.ts +24 -207
  22. package/dist/esm/dialect/mysql/mysql-dialect.d.ts +22 -7
  23. package/dist/esm/dialect/mysql/mysql-dialect.js +25 -9
  24. package/dist/esm/dialect/mysql/mysql-driver.d.ts +2 -15
  25. package/dist/esm/dialect/mysql/mysql-driver.js +4 -35
  26. package/dist/esm/dialect/postgres/postgres-dialect-config.d.ts +25 -89
  27. package/dist/esm/dialect/postgres/postgres-dialect.d.ts +21 -9
  28. package/dist/esm/dialect/postgres/postgres-dialect.js +24 -11
  29. package/dist/esm/dialect/postgres/postgres-driver.d.ts +2 -15
  30. package/dist/esm/dialect/postgres/postgres-driver.js +6 -37
  31. package/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts +25 -28
  32. package/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +19 -3
  33. package/dist/esm/dialect/sqlite/sqlite-dialect.js +19 -3
  34. package/dist/esm/dialect/sqlite/sqlite-driver.js +4 -38
  35. package/dist/esm/index.d.ts +153 -2
  36. package/dist/esm/index.js +142 -2
  37. package/dist/esm/migration/file-migration-provider.d.ts +21 -5
  38. package/dist/esm/migration/file-migration-provider.js +14 -13
  39. package/dist/esm/plugin/noop-plugin.d.ts +1 -1
  40. package/package.json +2 -7
  41. package/dist/cjs/index-nodeless.d.ts +0 -152
  42. package/dist/cjs/index-nodeless.js +0 -157
  43. package/dist/esm/index-nodeless.d.ts +0 -152
  44. package/dist/esm/index-nodeless.js +0 -142
@@ -2,30 +2,42 @@ import { Driver } from '../../driver/driver.js';
2
2
  import { Kysely } from '../../kysely.js';
3
3
  import { QueryCompiler } from '../../query-compiler/query-compiler.js';
4
4
  import { Dialect } from '../dialect.js';
5
- import { PostgresPool } from './postgres-driver.js';
6
5
  import { DatabaseIntrospector } from '../database-introspector.js';
7
6
  import { DialectAdapter } from '../dialect-adapter.js';
8
7
  import { PostgresDialectConfig } from './postgres-dialect-config.js';
9
8
  /**
10
9
  * PostgreSQL dialect that uses the [pg](https://node-postgres.com/) library.
11
10
  *
12
- * The {@link PostgresDialectConfig | configuration} passed to the constructor
13
- * is given as-is to the pg library's [Pool](https://node-postgres.com/api/pool)
14
- * constructor. See the following two links for more documentation:
11
+ * The constructor takes an instance of {@link PostgresDialectConfig}.
15
12
  *
16
- * https://node-postgres.com/api/pool
17
- * https://node-postgres.com/api/client
13
+ * ```ts
14
+ * import { Pool } from 'pg'
18
15
  *
19
- * You can also provide an existing pg `Pool` instance:
16
+ * new PostgresDialect({
17
+ * pool: new Pool({
18
+ * database: 'some_db',
19
+ * host: 'localhost',
20
+ * })
21
+ * })
22
+ * ```
23
+ *
24
+ * If you want the pool to only be created once it's first used, `pool`
25
+ * can be a function:
20
26
  *
21
27
  * ```ts
22
28
  * import { Pool } from 'pg'
23
- * new PostgresDialect(new Pool(config))
29
+ *
30
+ * new PostgresDialect({
31
+ * pool: async () => new Pool({
32
+ * database: 'some_db',
33
+ * host: 'localhost',
34
+ * })
35
+ * })
24
36
  * ```
25
37
  */
26
38
  export declare class PostgresDialect implements Dialect {
27
39
  #private;
28
- constructor(configOrPool: PostgresDialectConfig | PostgresPool);
40
+ constructor(config: PostgresDialectConfig);
29
41
  /**
30
42
  * Creates a driver for the dialect.
31
43
  */
@@ -8,27 +8,40 @@ const postgres_adapter_js_1 = require("./postgres-adapter.js");
8
8
  /**
9
9
  * PostgreSQL dialect that uses the [pg](https://node-postgres.com/) library.
10
10
  *
11
- * The {@link PostgresDialectConfig | configuration} passed to the constructor
12
- * is given as-is to the pg library's [Pool](https://node-postgres.com/api/pool)
13
- * constructor. See the following two links for more documentation:
11
+ * The constructor takes an instance of {@link PostgresDialectConfig}.
14
12
  *
15
- * https://node-postgres.com/api/pool
16
- * https://node-postgres.com/api/client
13
+ * ```ts
14
+ * import { Pool } from 'pg'
17
15
  *
18
- * You can also provide an existing pg `Pool` instance:
16
+ * new PostgresDialect({
17
+ * pool: new Pool({
18
+ * database: 'some_db',
19
+ * host: 'localhost',
20
+ * })
21
+ * })
22
+ * ```
23
+ *
24
+ * If you want the pool to only be created once it's first used, `pool`
25
+ * can be a function:
19
26
  *
20
27
  * ```ts
21
28
  * import { Pool } from 'pg'
22
- * new PostgresDialect(new Pool(config))
29
+ *
30
+ * new PostgresDialect({
31
+ * pool: async () => new Pool({
32
+ * database: 'some_db',
33
+ * host: 'localhost',
34
+ * })
35
+ * })
23
36
  * ```
24
37
  */
25
38
  class PostgresDialect {
26
- #configOrPool;
27
- constructor(configOrPool) {
28
- this.#configOrPool = configOrPool;
39
+ #config;
40
+ constructor(config) {
41
+ this.#config = config;
29
42
  }
30
43
  createDriver() {
31
- return new postgres_driver_js_1.PostgresDriver(this.#configOrPool);
44
+ return new postgres_driver_js_1.PostgresDriver(this.#config);
32
45
  }
33
46
  createQueryCompiler() {
34
47
  return new postgres_query_compiler_js_1.PostgresQueryCompiler();
@@ -1,11 +1,11 @@
1
1
  import { DatabaseConnection, QueryResult } from '../../driver/database-connection.js';
2
2
  import { Driver, TransactionSettings } from '../../driver/driver.js';
3
3
  import { CompiledQuery } from '../../query-compiler/compiled-query.js';
4
- import { PostgresDialectConfig } from './postgres-dialect-config.js';
4
+ import { PostgresDialectConfig, PostgresPoolClient } from './postgres-dialect-config.js';
5
5
  declare const PRIVATE_RELEASE_METHOD: unique symbol;
6
6
  export declare class PostgresDriver implements Driver {
7
7
  #private;
8
- constructor(configOrPool: PostgresDialectConfig | PostgresPool);
8
+ constructor(config: PostgresDialectConfig);
9
9
  /**
10
10
  * Initializes the driver.
11
11
  *
@@ -43,19 +43,6 @@ export declare class PostgresDriver implements Driver {
43
43
  */
44
44
  destroy(): Promise<void>;
45
45
  }
46
- export interface PostgresPool {
47
- connect(): Promise<PostgresPoolClient>;
48
- end(): Promise<void>;
49
- }
50
- interface PostgresPoolClient {
51
- query<R>(sql: string, parameters: ReadonlyArray<unknown>): Promise<PostgresQueryResult<R>>;
52
- release(): void;
53
- }
54
- interface PostgresQueryResult<R> {
55
- command: 'UPDATE' | 'DELETE' | 'INSERT' | 'SELECT';
56
- rowCount: number;
57
- rows: R[];
58
- }
59
46
  declare class PostgresConnection implements DatabaseConnection {
60
47
  #private;
61
48
  constructor(client: PostgresPoolClient);
@@ -9,24 +9,13 @@ class PostgresDriver {
9
9
  #config;
10
10
  #connections = new WeakMap();
11
11
  #pool;
12
- constructor(configOrPool) {
13
- if (isPostgresPool(configOrPool)) {
14
- this.#pool = configOrPool;
15
- }
16
- else {
17
- this.#config = (0, object_utils_js_1.freeze)({ ...configOrPool });
18
- }
12
+ constructor(config) {
13
+ this.#config = (0, object_utils_js_1.freeze)({ ...config });
19
14
  }
20
15
  async init() {
21
- if (this.#config) {
22
- // Import the `pg` module here instead at the top of the file
23
- // so that this file can be loaded by node without `pg` driver
24
- // installed.
25
- const PoolConstructor = await importPgPool();
26
- // Use the `pg` module's own pool. All drivers should use the
27
- // pool provided by the database library if possible.
28
- this.#pool = new PoolConstructor(this.#config);
29
- }
16
+ this.#pool = (0, object_utils_js_1.isFunction)(this.#config.pool)
17
+ ? await this.#config.pool()
18
+ : this.#config.pool;
30
19
  }
31
20
  async acquireConnection() {
32
21
  const client = await this.#pool.connect();
@@ -69,26 +58,6 @@ class PostgresDriver {
69
58
  }
70
59
  }
71
60
  exports.PostgresDriver = PostgresDriver;
72
- function isPostgresPool(obj) {
73
- return (0, object_utils_js_1.isObject)(obj) && (0, object_utils_js_1.isFunction)(obj.connect) && (0, object_utils_js_1.isFunction)(obj.end);
74
- }
75
- async function importPgPool() {
76
- try {
77
- // The imported module name must be a string literal to make
78
- // some bundlers work. So don't move this code behind a helper
79
- // for example.
80
- const pgModule = await Promise.resolve().then(() => require('pg'));
81
- if ((0, object_utils_js_1.isFunction)(pgModule.Pool)) {
82
- return pgModule.Pool;
83
- }
84
- else {
85
- return pgModule.default.Pool;
86
- }
87
- }
88
- catch (error) {
89
- throw new Error('Postgres client not installed. Please run `npm install pg`');
90
- }
91
- }
92
61
  class PostgresConnection {
93
62
  #client;
94
63
  constructor(client) {
@@ -1,39 +1,16 @@
1
1
  import { DatabaseConnection } from '../../driver/database-connection.js';
2
2
  /**
3
3
  * Config for the SQLite dialect.
4
- *
5
- * This interface is equal to `better-sqlite3` library's `Databse` class's constructor parameters.
6
- *
7
- * https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options
8
4
  */
9
5
  export interface SqliteDialectConfig {
10
6
  /**
11
- * The database file path.
7
+ * An sqlite Database instance or a function that returns one.
12
8
  *
13
- * This is passed as the first argument for the [Database](https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options)
14
- * class constructor.
15
- */
16
- databasePath: string;
17
- /**
18
- * Open the database connection in readonly mode (default: false)
19
- */
20
- readonly?: boolean;
21
- /**
22
- * If the database does not exist, an Error will be thrown instead of creating a new file.
23
- * This option is ignored for in-memory, temporary, or readonly database connections
24
- * (default: false)
25
- */
26
- fileMustExist?: boolean;
27
- /**
28
- * The number of milliseconds to wait when executing queries on a locked database,
29
- * before throwing a SQLITE_BUSY error (default: 5000)
30
- */
31
- timeout?: number;
32
- /**
33
- * Provide a function that gets called with every SQL string executed by the database connection
34
- * (default: null)
9
+ * If a function is provided, it's called once when the first query is executed.
10
+ *
11
+ * https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options
35
12
  */
36
- verbose?: (sql: string) => void;
13
+ database: SqliteDatabase | (() => Promise<SqliteDatabase>);
37
14
  /**
38
15
  * Called once when the first query is executed.
39
16
  *
@@ -41,3 +18,23 @@ export interface SqliteDialectConfig {
41
18
  */
42
19
  onCreateConnection?: (connection: DatabaseConnection) => Promise<void>;
43
20
  }
21
+ /**
22
+ * This interface is the subset of better-sqlite3 driver's `Database` class that
23
+ * kysely needs.
24
+ *
25
+ * We don't use the type from `better-sqlite3` here to not have a dependency to it.
26
+ *
27
+ * https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options
28
+ */
29
+ export interface SqliteDatabase {
30
+ close(): void;
31
+ prepare(sql: string): SqliteStatement;
32
+ }
33
+ export interface SqliteStatement {
34
+ readonly reader: boolean;
35
+ all(parameters: ReadonlyArray<unknown>): unknown[];
36
+ run(parameters: ReadonlyArray<unknown>): {
37
+ changes: number | bigint;
38
+ lastInsertRowid: number | bigint;
39
+ };
40
+ }
@@ -8,9 +8,25 @@ import { SqliteDialectConfig } from './sqlite-dialect-config.js';
8
8
  /**
9
9
  * SQLite dialect that uses the [better-sqlite3](https://github.com/JoshuaWise/better-sqlite3) library.
10
10
  *
11
- * The {@link SqliteDialectConfig | configuration} is used to construct an instance of
12
- * [Database](https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options)
13
- * class. The configuration values are passed directly to the `Database` constructor.
11
+ * The constructor takes an instance of {@link SqliteDialectConfig}.
12
+ *
13
+ * ```ts
14
+ * import Database from 'better-sqlite3'
15
+ *
16
+ * new SqliteDialect({
17
+ * database: new Database('db.sqlite')
18
+ * })
19
+ * ```
20
+ *
21
+ * If you want the pool to only be created once it's first used, `database`
22
+ * can be a function:
23
+ *
24
+ * ```ts
25
+ * import Database from 'better-sqlite3'
26
+ *
27
+ * new SqliteDialect({
28
+ * database: async () => new Database('db.sqlite')
29
+ * })
14
30
  */
15
31
  export declare class SqliteDialect implements Dialect {
16
32
  #private;
@@ -9,9 +9,25 @@ const object_utils_js_1 = require("../../util/object-utils.js");
9
9
  /**
10
10
  * SQLite dialect that uses the [better-sqlite3](https://github.com/JoshuaWise/better-sqlite3) library.
11
11
  *
12
- * The {@link SqliteDialectConfig | configuration} is used to construct an instance of
13
- * [Database](https://github.com/JoshuaWise/better-sqlite3/blob/master/docs/api.md#new-databasepath-options)
14
- * class. The configuration values are passed directly to the `Database` constructor.
12
+ * The constructor takes an instance of {@link SqliteDialectConfig}.
13
+ *
14
+ * ```ts
15
+ * import Database from 'better-sqlite3'
16
+ *
17
+ * new SqliteDialect({
18
+ * database: new Database('db.sqlite')
19
+ * })
20
+ * ```
21
+ *
22
+ * If you want the pool to only be created once it's first used, `database`
23
+ * can be a function:
24
+ *
25
+ * ```ts
26
+ * import Database from 'better-sqlite3'
27
+ *
28
+ * new SqliteDialect({
29
+ * database: async () => new Database('db.sqlite')
30
+ * })
15
31
  */
16
32
  class SqliteDialect {
17
33
  #config;
@@ -12,26 +12,9 @@ class SqliteDriver {
12
12
  this.#config = (0, object_utils_js_1.freeze)({ ...config });
13
13
  }
14
14
  async init() {
15
- // Import the `better-sqlite3` module here instead at the top of the file
16
- // so that this file can be loaded by node without `better-sqlite3` driver
17
- // installed. As you can see, there IS an import from `better-sqlite3` at
18
- // the top level too, but that's only for types. It doesn't get compiled
19
- // into javascript. You can check the built javascript code.
20
- const DatabaseConstructor = await importBetterSqlite3Database();
21
- const options = {};
22
- if ((0, object_utils_js_1.isBoolean)(this.#config.readonly)) {
23
- options.readonly = this.#config.readonly;
24
- }
25
- if ((0, object_utils_js_1.isBoolean)(this.#config.fileMustExist)) {
26
- options.fileMustExist = this.#config.fileMustExist;
27
- }
28
- if ((0, object_utils_js_1.isNumber)(this.#config.timeout)) {
29
- options.timeout = this.#config.timeout;
30
- }
31
- if ((0, object_utils_js_1.isFunction)(this.#config.verbose)) {
32
- options.verbose = this.#config.verbose;
33
- }
34
- this.#db = new DatabaseConstructor(this.#config.databasePath, options);
15
+ this.#db = (0, object_utils_js_1.isFunction)(this.#config.database)
16
+ ? await this.#config.database()
17
+ : this.#config.database;
35
18
  this.#connection = new SqliteConnection(this.#db);
36
19
  if (this.#config.onCreateConnection) {
37
20
  await this.#config.onCreateConnection(this.#connection);
@@ -60,23 +43,6 @@ class SqliteDriver {
60
43
  }
61
44
  }
62
45
  exports.SqliteDriver = SqliteDriver;
63
- async function importBetterSqlite3Database() {
64
- try {
65
- // The imported module name must be a string literal to make
66
- // some bundlers work. So don't move this code behind a helper
67
- // for example.
68
- const sqliteModule = await Promise.resolve().then(() => require('better-sqlite3'));
69
- if ((0, object_utils_js_1.isFunction)(sqliteModule)) {
70
- return sqliteModule;
71
- }
72
- else {
73
- return sqliteModule.default;
74
- }
75
- }
76
- catch (error) {
77
- throw new Error('SQLite client not installed. Please run `npm install better-sqlite3`');
78
- }
79
- }
80
46
  class SqliteConnection {
81
47
  #db;
82
48
  constructor(db) {
@@ -1,11 +1,162 @@
1
- export * from './index-nodeless.js';
2
- export * from './migration/file-migration-provider.js';
1
+ export * from './kysely.js';
2
+ export * from './query-creator.js';
3
+ export * from './query-builder/where-interface.js';
4
+ export * from './query-builder/join-interface.js';
5
+ export * from './query-builder/returning-interface.js';
6
+ export * from './query-builder/having-interface.js';
7
+ export * from './query-builder/select-query-builder.js';
8
+ export * from './query-builder/insert-query-builder.js';
9
+ export * from './query-builder/update-query-builder.js';
10
+ export * from './query-builder/delete-query-builder.js';
11
+ export * from './query-builder/no-result-error.js';
12
+ export * from './query-builder/join-builder.js';
13
+ export * from './query-builder/expression-builder.js';
14
+ export * from './query-builder/function-builder.js';
15
+ export * from './query-builder/insert-result.js';
16
+ export * from './query-builder/delete-result.js';
17
+ export * from './query-builder/update-result.js';
18
+ export * from './query-builder/on-conflict-builder.js';
19
+ export * from './raw-builder/raw-builder.js';
20
+ export * from './raw-builder/sql.js';
21
+ export * from './query-executor/query-executor.js';
22
+ export * from './query-executor/default-query-executor.js';
23
+ export * from './query-executor/noop-query-executor.js';
24
+ export * from './query-executor/query-executor-provider.js';
25
+ export * from './query-compiler/default-query-compiler.js';
26
+ export * from './query-compiler/compiled-query.js';
27
+ export * from './schema/schema.js';
28
+ export * from './schema/create-table-builder.js';
29
+ export * from './schema/drop-table-builder.js';
30
+ export * from './schema/create-index-builder.js';
31
+ export * from './schema/drop-index-builder.js';
32
+ export * from './schema/create-schema-builder.js';
33
+ export * from './schema/drop-schema-builder.js';
34
+ export * from './schema/column-definition-builder.js';
35
+ export * from './schema/foreign-key-constraint-builder.js';
36
+ export * from './schema/alter-table-builder.js';
37
+ export * from './schema/create-view-builder.js';
38
+ export * from './schema/drop-view-builder.js';
39
+ export * from './dynamic/dynamic.js';
40
+ export * from './driver/driver.js';
41
+ export * from './driver/database-connection.js';
42
+ export * from './driver/connection-provider.js';
43
+ export * from './driver/default-connection-provider.js';
44
+ export * from './driver/single-connection-provider.js';
45
+ export * from './driver/dummy-driver.js';
46
+ export * from './dialect/dialect.js';
47
+ export * from './dialect/dialect-adapter.js';
48
+ export * from './dialect/dialect-adapter-base.js';
49
+ export * from './dialect/database-introspector.js';
3
50
  export * from './dialect/sqlite/sqlite-dialect.js';
4
51
  export * from './dialect/sqlite/sqlite-dialect-config.js';
5
52
  export * from './dialect/sqlite/sqlite-driver.js';
53
+ export * from './dialect/postgres/postgres-query-compiler.js';
54
+ export * from './dialect/postgres/postgres-introspector.js';
55
+ export * from './dialect/postgres/postgres-adapter.js';
6
56
  export * from './dialect/mysql/mysql-dialect.js';
7
57
  export * from './dialect/mysql/mysql-dialect-config.js';
8
58
  export * from './dialect/mysql/mysql-driver.js';
59
+ export * from './dialect/mysql/mysql-query-compiler.js';
60
+ export * from './dialect/mysql/mysql-introspector.js';
61
+ export * from './dialect/mysql/mysql-adapter.js';
9
62
  export * from './dialect/postgres/postgres-driver.js';
10
63
  export * from './dialect/postgres/postgres-dialect-config.js';
11
64
  export * from './dialect/postgres/postgres-dialect.js';
65
+ export * from './dialect/sqlite/sqlite-query-compiler.js';
66
+ export * from './dialect/sqlite/sqlite-introspector.js';
67
+ export * from './dialect/sqlite/sqlite-adapter.js';
68
+ export * from './query-compiler/default-query-compiler.js';
69
+ export * from './query-compiler/query-compiler.js';
70
+ export * from './migration/migrator.js';
71
+ export * from './migration/file-migration-provider.js';
72
+ export * from './plugin/kysely-plugin.js';
73
+ export * from './plugin/camel-case/camel-case-plugin.js';
74
+ export * from './plugin/deduplicate-joins/deduplicate-joins-plugin.js';
75
+ export * from './operation-node/add-column-node.js';
76
+ export * from './operation-node/add-constraint-node.js';
77
+ export * from './operation-node/alias-node.js';
78
+ export * from './operation-node/alter-column-node.js';
79
+ export * from './operation-node/alter-table-node.js';
80
+ export * from './operation-node/and-node.js';
81
+ export * from './operation-node/check-constraint-node.js';
82
+ export * from './operation-node/column-definition-node.js';
83
+ export * from './operation-node/column-node.js';
84
+ export * from './operation-node/column-update-node.js';
85
+ export * from './operation-node/common-table-expression-node.js';
86
+ export * from './operation-node/common-table-expression-name-node.js';
87
+ export * from './operation-node/constraint-node.js';
88
+ export * from './operation-node/create-index-node.js';
89
+ export * from './operation-node/create-schema-node.js';
90
+ export * from './operation-node/create-table-node.js';
91
+ export * from './operation-node/create-view-node.js';
92
+ export * from './operation-node/data-type-node.js';
93
+ export * from './operation-node/default-value-node.js';
94
+ export * from './operation-node/delete-query-node.js';
95
+ export * from './operation-node/drop-column-node.js';
96
+ export * from './operation-node/drop-constraint-node.js';
97
+ export * from './operation-node/drop-index-node.js';
98
+ export * from './operation-node/drop-schema-node.js';
99
+ export * from './operation-node/drop-table-node.js';
100
+ export * from './operation-node/drop-view-node.js';
101
+ export * from './operation-node/filter-node.js';
102
+ export * from './operation-node/foreign-key-constraint-node.js';
103
+ export * from './operation-node/from-node.js';
104
+ export * from './operation-node/generated-node.js';
105
+ export * from './operation-node/group-by-item-node.js';
106
+ export * from './operation-node/group-by-node.js';
107
+ export * from './operation-node/having-node.js';
108
+ export * from './operation-node/identifier-node.js';
109
+ export * from './operation-node/insert-query-node.js';
110
+ export * from './operation-node/join-node.js';
111
+ export * from './operation-node/limit-node.js';
112
+ export * from './operation-node/list-node.js';
113
+ export * from './operation-node/modify-column-node.js';
114
+ export * from './operation-node/offset-node.js';
115
+ export * from './operation-node/on-conflict-node.js';
116
+ export * from './operation-node/on-duplicate-key-node.js';
117
+ export * from './operation-node/on-node.js';
118
+ export * from './operation-node/operation-node-source.js';
119
+ export * from './operation-node/operation-node-transformer.js';
120
+ export * from './operation-node/operation-node-utils.js';
121
+ export * from './operation-node/operation-node-visitor.js';
122
+ export * from './operation-node/operation-node.js';
123
+ export * from './operation-node/operator-node.js';
124
+ export * from './operation-node/or-node.js';
125
+ export * from './operation-node/order-by-item-node.js';
126
+ export * from './operation-node/order-by-node.js';
127
+ export * from './operation-node/parens-node.js';
128
+ export * from './operation-node/primary-constraint-node.js';
129
+ export * from './operation-node/primitive-value-list-node.js';
130
+ export * from './operation-node/query-node.js';
131
+ export * from './operation-node/raw-node.js';
132
+ export * from './operation-node/reference-node.js';
133
+ export * from './operation-node/references-node.js';
134
+ export * from './operation-node/rename-column-node.js';
135
+ export * from './operation-node/returning-node.js';
136
+ export * from './operation-node/select-all-node.js';
137
+ export * from './operation-node/select-query-node.js';
138
+ export * from './operation-node/select-query-node.js';
139
+ export * from './operation-node/selection-node.js';
140
+ export * from './operation-node/table-node.js';
141
+ export * from './operation-node/union-node.js';
142
+ export * from './operation-node/unique-constraint-node.js';
143
+ export * from './operation-node/update-query-node.js';
144
+ export * from './operation-node/value-list-node.js';
145
+ export * from './operation-node/value-node.js';
146
+ export * from './operation-node/values-node.js';
147
+ export * from './operation-node/where-node.js';
148
+ export * from './operation-node/with-node.js';
149
+ export * from './util/column-type.js';
150
+ export * from './util/compilable.js';
151
+ export * from './util/log.js';
152
+ export { AnyColumn, UnknownRow, AnySelectQueryBuilder, } from './util/type-utils.js';
153
+ export { SelectExpression, SelectExpressionOrList, Selection, } from './parser/select-parser.js';
154
+ export { ReferenceExpression, ReferenceExpressionOrList, } from './parser/reference-parser.js';
155
+ export { ValueExpression, ValueExpressionOrList, } from './parser/value-parser.js';
156
+ export { FilterValueExpression, FilterValueExpressionOrList, ExistsExpression, FilterOperator, } from './parser/filter-parser.js';
157
+ export { TableExpression, TableExpressionOrList, } from './parser/table-parser.js';
158
+ export { JoinReferenceExpression, JoinCallbackExpression, } from './parser/join-parser.js';
159
+ export { InsertObject } from './parser/insert-values-parser.js';
160
+ export { MutationObject } from './parser/update-set-parser.js';
161
+ export { OrderByExpression, OrderByDirectionExpression, } from './parser/order-by-parser.js';
162
+ export { UnionExpression } from './parser/union-parser.js';