forge-sql-orm 2.1.0 → 2.1.2

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.
@@ -6,6 +6,8 @@ import { DeleteAndEvictCacheType, InsertAndEvictCacheType, SelectAliasedCacheabl
6
6
  import { ForgeSQLCacheOperations } from "./ForgeSQLCacheOperations";
7
7
  import type { MySqlTable } from "drizzle-orm/mysql-core/table";
8
8
  import { MySqlDeleteBase, MySqlInsertBuilder, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
9
+ import { SQLWrapper } from "drizzle-orm/sql/sql";
10
+ import { WithSubquery } from "drizzle-orm/subquery";
9
11
  /**
10
12
  * Public class that acts as a wrapper around the private ForgeSQLORMImpl.
11
13
  * Provides a clean interface for working with Forge SQL and Drizzle ORM.
@@ -15,6 +17,60 @@ declare class ForgeSQLORM implements ForgeSqlOperation {
15
17
  constructor(options?: ForgeSqlOrmOptions);
16
18
  selectCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
17
19
  selectDistinctCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
20
+ /**
21
+ * Creates a select query builder for all columns from a table with field aliasing support.
22
+ * This is a convenience method that automatically selects all columns from the specified table.
23
+ *
24
+ * @template T - The type of the table
25
+ * @param table - The table to select from
26
+ * @returns Select query builder with all table columns and field aliasing support
27
+ * @example
28
+ * ```typescript
29
+ * const users = await forgeSQL.selectFrom(userTable).where(eq(userTable.id, 1));
30
+ * ```
31
+ */
32
+ selectFrom<T extends MySqlTable>(table: T): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
33
+ /**
34
+ * Creates a select distinct query builder for all columns from a table with field aliasing support.
35
+ * This is a convenience method that automatically selects all distinct columns from the specified table.
36
+ *
37
+ * @template T - The type of the table
38
+ * @param table - The table to select from
39
+ * @returns Select distinct query builder with all table columns and field aliasing support
40
+ * @example
41
+ * ```typescript
42
+ * const uniqueUsers = await forgeSQL.selectDistinctFrom(userTable).where(eq(userTable.status, 'active'));
43
+ * ```
44
+ */
45
+ selectDistinctFrom<T extends MySqlTable>(table: T): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
46
+ /**
47
+ * Creates a cacheable select query builder for all columns from a table with field aliasing and caching support.
48
+ * This is a convenience method that automatically selects all columns from the specified table with caching enabled.
49
+ *
50
+ * @template T - The type of the table
51
+ * @param table - The table to select from
52
+ * @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
53
+ * @returns Select query builder with all table columns, field aliasing, and caching support
54
+ * @example
55
+ * ```typescript
56
+ * const users = await forgeSQL.selectCacheableFrom(userTable, 300).where(eq(userTable.id, 1));
57
+ * ```
58
+ */
59
+ selectCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
60
+ /**
61
+ * Creates a cacheable select distinct query builder for all columns from a table with field aliasing and caching support.
62
+ * This is a convenience method that automatically selects all distinct columns from the specified table with caching enabled.
63
+ *
64
+ * @template T - The type of the table
65
+ * @param table - The table to select from
66
+ * @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
67
+ * @returns Select distinct query builder with all table columns, field aliasing, and caching support
68
+ * @example
69
+ * ```typescript
70
+ * const uniqueUsers = await forgeSQL.selectDistinctCacheableFrom(userTable, 300).where(eq(userTable.status, 'active'));
71
+ * ```
72
+ */
73
+ selectDistinctCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
18
74
  executeWithCacheContext(cacheContext: () => Promise<void>): Promise<void>;
19
75
  executeWithCacheContextAndReturnValue<T>(cacheContext: () => Promise<T>): Promise<T>;
20
76
  /**
@@ -155,14 +211,102 @@ declare class ForgeSQLORM implements ForgeSqlOperation {
155
211
  getDrizzleQueryBuilder(): MySqlRemoteDatabase<Record<string, unknown>> & {
156
212
  selectAliased: SelectAliasedType;
157
213
  selectAliasedDistinct: SelectAliasedDistinctType;
214
+ executeQuery: import("../lib/drizzle/extensions/additionalActions").ExecuteQuery;
158
215
  selectAliasedCacheable: SelectAliasedCacheableType;
159
216
  selectAliasedDistinctCacheable: SelectAliasedDistinctCacheableType;
217
+ executeQueryCacheable: import("../lib/drizzle/extensions/additionalActions").ExecuteQueryCacheable;
160
218
  insertWithCacheContext: InsertAndEvictCacheType;
161
219
  insertAndEvictCache: InsertAndEvictCacheType;
162
220
  updateAndEvictCache: UpdateAndEvictCacheType;
163
221
  updateWithCacheContext: UpdateAndEvictCacheType;
164
222
  deleteAndEvictCache: DeleteAndEvictCacheType;
165
223
  deleteWithCacheContext: DeleteAndEvictCacheType;
224
+ selectFrom: import("../lib/drizzle/extensions/additionalActions").SelectAllFromAliasedType;
225
+ selectDistinctFrom: import("../lib/drizzle/extensions/additionalActions").SelectAllDistinctFromAliasedType;
226
+ selectFromCacheable: import("../lib/drizzle/extensions/additionalActions").SelectAllFromCacheableAliasedType;
227
+ selectDistinctFromCacheable: import("../lib/drizzle/extensions/additionalActions").SelectAllDistinctFromCacheableAliasedType;
228
+ };
229
+ /**
230
+ * Executes a raw SQL query with local cache support.
231
+ * This method provides local caching for raw SQL queries within the current invocation context.
232
+ * Results are cached locally and will be returned from cache on subsequent identical queries.
233
+ *
234
+ * @param query - The SQL query to execute (SQLWrapper or string)
235
+ * @returns Promise with query results
236
+ * @example
237
+ * ```typescript
238
+ * // Using SQLWrapper
239
+ * const result = await forgeSQL.execute(sql`SELECT * FROM users WHERE id = ${userId}`);
240
+ *
241
+ * // Using string
242
+ * const result = await forgeSQL.execute("SELECT * FROM users WHERE status = 'active'");
243
+ * ```
244
+ */
245
+ execute(query: SQLWrapper | string): Promise<import("drizzle-orm/mysql-proxy").MySqlRawQueryResult>;
246
+ /**
247
+ * Executes a raw SQL query with both local and global cache support.
248
+ * This method provides comprehensive caching for raw SQL queries:
249
+ * - Local cache: Within the current invocation context
250
+ * - Global cache: Cross-invocation caching using @forge/kvs
251
+ *
252
+ * @param query - The SQL query to execute (SQLWrapper or string)
253
+ * @param cacheTtl - Optional cache TTL override (defaults to global cache TTL)
254
+ * @returns Promise with query results
255
+ * @example
256
+ * ```typescript
257
+ * // Using SQLWrapper with custom TTL
258
+ * const result = await forgeSQL.executeCacheable(sql`SELECT * FROM users WHERE id = ${userId}`, 300);
259
+ *
260
+ * // Using string with default TTL
261
+ * const result = await forgeSQL.executeCacheable("SELECT * FROM users WHERE status = 'active'");
262
+ * ```
263
+ */
264
+ executeCacheable(query: SQLWrapper | string, cacheTtl?: number): Promise<import("drizzle-orm/mysql-proxy").MySqlRawQueryResult>;
265
+ /**
266
+ * Creates a Common Table Expression (CTE) builder for complex queries.
267
+ * CTEs allow you to define temporary named result sets that exist within the scope of a single query.
268
+ *
269
+ * @returns WithBuilder for creating CTEs
270
+ * @example
271
+ * ```typescript
272
+ * const withQuery = forgeSQL.$with('userStats').as(
273
+ * forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
274
+ * .from(users)
275
+ * .groupBy(users.id)
276
+ * );
277
+ * ```
278
+ */
279
+ get $with(): import("drizzle-orm/mysql-core").WithBuilder;
280
+ /**
281
+ * Creates a query builder that uses Common Table Expressions (CTEs).
282
+ * CTEs allow you to define temporary named result sets that exist within the scope of a single query.
283
+ *
284
+ * @param queries - Array of CTE queries created with $with()
285
+ * @returns Query builder with CTE support
286
+ * @example
287
+ * ```typescript
288
+ * const withQuery = forgeSQL.$with('userStats').as(
289
+ * forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
290
+ * .from(users)
291
+ * .groupBy(users.id)
292
+ * );
293
+ *
294
+ * const result = await forgeSQL.with(withQuery)
295
+ * .select({ userId: withQuery.userId, count: withQuery.count })
296
+ * .from(withQuery);
297
+ * ```
298
+ */
299
+ with(...queries: WithSubquery[]): {
300
+ select: {
301
+ (): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT, "db">;
302
+ <TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT, "db">;
303
+ };
304
+ selectDistinct: {
305
+ (): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT, "db">;
306
+ <TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT, "db">;
307
+ };
308
+ update: <TTable extends MySqlTable>(table: TTable) => MySqlUpdateBuilder<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
309
+ delete: <TTable extends MySqlTable>(table: TTable) => MySqlDeleteBase<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, false, never>;
166
310
  };
167
311
  }
168
312
  export default ForgeSQLORM;
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLORM.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLORM.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ForgeSQLORM.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLORM.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,14 @@ import { MySqlRemoteDatabase, MySqlRemotePreparedQueryHKT } from "drizzle-orm/my
7
7
  import { SqlHints } from "../utils/sqlHints";
8
8
  import { ClusterStatementRowCamelCase, ExplainAnalyzeRow, SlowQueryNormalized } from "./SystemTables";
9
9
  import { ForgeSQLCacheOperations } from "./ForgeSQLCacheOperations";
10
- import { DeleteAndEvictCacheType, InsertAndEvictCacheType, SelectAliasedCacheableType, SelectAliasedDistinctCacheableType, SelectAliasedDistinctType, SelectAliasedType, UpdateAndEvictCacheType } from "..";
11
- import { MySqlDeleteBase, MySqlInsertBuilder, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
10
+ import { DeleteAndEvictCacheType, ExecuteQuery, ExecuteQueryCacheable, InsertAndEvictCacheType, SelectAliasedCacheableType, SelectAliasedDistinctCacheableType, SelectAliasedDistinctType, SelectAliasedType, SelectAllDistinctFromAliasedType, SelectAllDistinctFromCacheableAliasedType, SelectAllFromAliasedType, SelectAllFromCacheableAliasedType, UpdateAndEvictCacheType } from "..";
11
+ import { MySqlDeleteBase, MySqlInsertBuilder, MySqlSelectBase, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
12
12
  import { MySqlRemoteQueryResultHKT } from "drizzle-orm/mysql-proxy";
13
+ import { GetSelectTableName, GetSelectTableSelection } from "drizzle-orm/query-builders/select.types";
14
+ import { SQLWrapper } from "drizzle-orm/sql/sql";
15
+ import type { MySqlQueryResultKind } from "drizzle-orm/mysql-core/session";
16
+ import type { WithBuilder } from "drizzle-orm/mysql-core/subquery";
17
+ import { WithSubquery } from "drizzle-orm/subquery";
13
18
  /**
14
19
  * Core interface for ForgeSQL operations.
15
20
  * Provides access to CRUD operations, schema-level SQL operations, and query analysis capabilities.
@@ -28,14 +33,20 @@ export interface ForgeSqlOperation extends QueryBuilderForgeSql {
28
33
  getDrizzleQueryBuilder(): MySqlRemoteDatabase<Record<string, unknown>> & {
29
34
  selectAliased: SelectAliasedType;
30
35
  selectAliasedDistinct: SelectAliasedDistinctType;
36
+ executeQuery: ExecuteQuery;
31
37
  selectAliasedCacheable: SelectAliasedCacheableType;
32
38
  selectAliasedDistinctCacheable: SelectAliasedDistinctCacheableType;
39
+ executeQueryCacheable: ExecuteQueryCacheable;
33
40
  insertWithCacheContext: InsertAndEvictCacheType;
34
41
  insertAndEvictCache: InsertAndEvictCacheType;
35
42
  updateAndEvictCache: UpdateAndEvictCacheType;
36
43
  updateWithCacheContext: UpdateAndEvictCacheType;
37
44
  deleteAndEvictCache: DeleteAndEvictCacheType;
38
45
  deleteWithCacheContext: DeleteAndEvictCacheType;
46
+ selectFrom: SelectAllFromAliasedType;
47
+ selectDistinctFrom: SelectAllDistinctFromAliasedType;
48
+ selectFromCacheable: SelectAllFromCacheableAliasedType;
49
+ selectDistinctFromCacheable: SelectAllDistinctFromCacheableAliasedType;
39
50
  };
40
51
  /**
41
52
  * Provides modify (Create, Update, Delete) operations with optimistic locking support.
@@ -83,8 +94,10 @@ export interface QueryBuilderForgeSql {
83
94
  getDrizzleQueryBuilder(): MySqlRemoteDatabase<Record<string, unknown>> & {
84
95
  selectAliased: SelectAliasedType;
85
96
  selectAliasedDistinct: SelectAliasedDistinctType;
97
+ executeQuery: ExecuteQuery;
86
98
  selectAliasedCacheable: SelectAliasedCacheableType;
87
99
  selectAliasedDistinctCacheable: SelectAliasedDistinctCacheableType;
100
+ executeQueryCacheable: ExecuteQueryCacheable;
88
101
  insertWithCacheContext: InsertAndEvictCacheType;
89
102
  insertAndEvictCache: InsertAndEvictCacheType;
90
103
  updateAndEvictCache: UpdateAndEvictCacheType;
@@ -109,6 +122,19 @@ export interface QueryBuilderForgeSql {
109
122
  * ```
110
123
  */
111
124
  select<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
125
+ /**
126
+ * Creates a select query builder for all columns from a table with field aliasing support.
127
+ * This is a convenience method that automatically selects all columns from the specified table.
128
+ *
129
+ * @template T - The type of the table
130
+ * @param table - The table to select from
131
+ * @returns Select query builder with all table columns and field aliasing support
132
+ * @example
133
+ * ```typescript
134
+ * const users = await forgeSQL.selectFrom(userTable).where(eq(userTable.id, 1));
135
+ * ```
136
+ */
137
+ selectFrom<T extends MySqlTable>(table: T): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
112
138
  /**
113
139
  * Creates a distinct select query with unique field aliases to prevent field name collisions in joins.
114
140
  * This is particularly useful when working with Atlassian Forge SQL, which collapses fields with the same name in joined tables.
@@ -126,6 +152,19 @@ export interface QueryBuilderForgeSql {
126
152
  * ```
127
153
  */
128
154
  selectDistinct<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
155
+ /**
156
+ * Creates a select distinct query builder for all columns from a table with field aliasing support.
157
+ * This is a convenience method that automatically selects all distinct columns from the specified table.
158
+ *
159
+ * @template T - The type of the table
160
+ * @param table - The table to select from
161
+ * @returns Select distinct query builder with all table columns and field aliasing support
162
+ * @example
163
+ * ```typescript
164
+ * const uniqueUsers = await forgeSQL.selectDistinctFrom(userTable).where(eq(userTable.status, 'active'));
165
+ * ```
166
+ */
167
+ selectDistinctFrom<T extends MySqlTable>(table: T): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
129
168
  /**
130
169
  * Creates a cacheable select query with unique field aliases to prevent field name collisions in joins.
131
170
  * This is particularly useful when working with Atlassian Forge SQL, which collapses fields with the same name in joined tables.
@@ -144,6 +183,20 @@ export interface QueryBuilderForgeSql {
144
183
  * ```
145
184
  */
146
185
  selectCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
186
+ /**
187
+ * Creates a cacheable select query builder for all columns from a table with field aliasing and caching support.
188
+ * This is a convenience method that automatically selects all columns from the specified table with caching enabled.
189
+ *
190
+ * @template T - The type of the table
191
+ * @param table - The table to select from
192
+ * @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
193
+ * @returns Select query builder with all table columns, field aliasing, and caching support
194
+ * @example
195
+ * ```typescript
196
+ * const users = await forgeSQL.selectCacheableFrom(userTable, 300).where(eq(userTable.id, 1));
197
+ * ```
198
+ */
199
+ selectCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
147
200
  /**
148
201
  * Creates a cacheable distinct select query with unique field aliases to prevent field name collisions in joins.
149
202
  * This is particularly useful when working with Atlassian Forge SQL, which collapses fields with the same name in joined tables.
@@ -162,6 +215,20 @@ export interface QueryBuilderForgeSql {
162
215
  * ```
163
216
  */
164
217
  selectDistinctCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
218
+ /**
219
+ * Creates a cacheable select distinct query builder for all columns from a table with field aliasing and caching support.
220
+ * This is a convenience method that automatically selects all distinct columns from the specified table with caching enabled.
221
+ *
222
+ * @template T - The type of the table
223
+ * @param table - The table to select from
224
+ * @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
225
+ * @returns Select distinct query builder with all table columns, field aliasing, and caching support
226
+ * @example
227
+ * ```typescript
228
+ * const uniqueUsers = await forgeSQL.selectDistinctCacheableFrom(userTable, 300).where(eq(userTable.status, 'active'));
229
+ * ```
230
+ */
231
+ selectDistinctCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
165
232
  /**
166
233
  * Creates an insert query builder.
167
234
  *
@@ -299,6 +366,86 @@ export interface QueryBuilderForgeSql {
299
366
  * ```
300
367
  */
301
368
  executeWithLocalCacheContextAndReturnValue<T>(cacheContext: () => Promise<T>): Promise<T>;
369
+ /**
370
+ * Executes a raw SQL query with local cache support.
371
+ * This method provides local caching for raw SQL queries within the current invocation context.
372
+ * Results are cached locally and will be returned from cache on subsequent identical queries.
373
+ *
374
+ * @param query - The SQL query to execute (SQLWrapper or string)
375
+ * @returns Promise with query results
376
+ * @example
377
+ * ```typescript
378
+ * // Using SQLWrapper
379
+ * const result = await forgeSQL.execute(sql`SELECT * FROM users WHERE id = ${userId}`);
380
+ *
381
+ * // Using string
382
+ * const result = await forgeSQL.execute("SELECT * FROM users WHERE status = 'active'");
383
+ * ```
384
+ */
385
+ execute(query: SQLWrapper | string): Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
386
+ /**
387
+ * Executes a raw SQL query with both local and global cache support.
388
+ * This method provides comprehensive caching for raw SQL queries:
389
+ * - Local cache: Within the current invocation context
390
+ * - Global cache: Cross-invocation caching using @forge/kvs
391
+ *
392
+ * @param query - The SQL query to execute (SQLWrapper or string)
393
+ * @param cacheTtl - Optional cache TTL override (defaults to global cache TTL)
394
+ * @returns Promise with query results
395
+ * @example
396
+ * ```typescript
397
+ * // Using SQLWrapper with custom TTL
398
+ * const result = await forgeSQL.executeCacheable(sql`SELECT * FROM users WHERE id = ${userId}`, 300);
399
+ *
400
+ * // Using string with default TTL
401
+ * const result = await forgeSQL.executeCacheable("SELECT * FROM users WHERE status = 'active'");
402
+ * ```
403
+ */
404
+ executeCacheable(query: SQLWrapper | string, cacheTtl?: number): Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
405
+ /**
406
+ * Creates a Common Table Expression (CTE) builder for complex queries.
407
+ * CTEs allow you to define temporary named result sets that exist within the scope of a single query.
408
+ *
409
+ * @returns WithBuilder for creating CTEs
410
+ * @example
411
+ * ```typescript
412
+ * const withQuery = forgeSQL.$with('userStats').as(
413
+ * forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
414
+ * .from(users)
415
+ * .groupBy(users.id)
416
+ * );
417
+ * ```
418
+ */
419
+ $with: WithBuilder;
420
+ /**
421
+ * Creates a query builder that uses Common Table Expressions (CTEs).
422
+ * CTEs allow you to define temporary named result sets that exist within the scope of a single query.
423
+ *
424
+ * @param queries - Array of CTE queries created with $with()
425
+ * @returns Query builder with CTE support
426
+ * @example
427
+ * ```typescript
428
+ * const withQuery = forgeSQL.$with('userStats').as(
429
+ * forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
430
+ * .from(users)
431
+ * .groupBy(users.id)
432
+ * );
433
+ *
434
+ * const result = await forgeSQL.with(withQuery)
435
+ * .select({ userId: withQuery.userId, count: withQuery.count })
436
+ * .from(withQuery);
437
+ * ```
438
+ */
439
+ with(...queries: WithSubquery[]): {
440
+ select: {
441
+ (): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT>;
442
+ <TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
443
+ };
444
+ selectDistinct: {
445
+ (): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT>;
446
+ <TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
447
+ };
448
+ };
302
449
  }
303
450
  /**
304
451
  * Interface for Modify (Create, Update, Delete) operations.
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,aAAa,EAEb,kBAAkB,EAClB,UAAU,EACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,EACpB,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,0BAA0B,EAC1B,kCAAkC,EAClC,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,IAAI,CAAC;AACZ,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEpE;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D;;;OAGG;IACH,sBAAsB,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG;QACvE,aAAa,EAAE,iBAAiB,CAAC;QACjC,qBAAqB,EAAE,yBAAyB,CAAC;QACjD,sBAAsB,EAAE,0BAA0B,CAAC;QACnD,8BAA8B,EAAE,kCAAkC,CAAC;QACnE,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;KACjD,CAAC;IAEF;;;OAGG;IACH,oBAAoB,IAAI,6BAA6B,CAAC;IAEtD;;;OAGG;IACH,KAAK,IAAI,iBAAiB,CAAC;IAE3B;;;OAGG;IACH,OAAO,IAAI,qBAAqB,CAAC;IAEjC;;;;;;;;;OASG;IACH,iCAAiC,IAAI,uBAAuB,CAAC;CAC9D;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,sBAAsB,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG;QACvE,aAAa,EAAE,iBAAiB,CAAC;QACjC,qBAAqB,EAAE,yBAAyB,CAAC;QACjD,sBAAsB,EAAE,0BAA0B,CAAC;QACnD,8BAA8B,EAAE,kCAAkC,CAAC;QACnE,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;KACjD,CAAC;IAEF;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,UAAU,SAAS,cAAc,EACtC,MAAM,EAAE,UAAU,GACjB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,UAAU,SAAS,cAAc,EAC9C,MAAM,EAAE,UAAU,GACjB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;;;;;;;;;OAgBG;IACH,eAAe,CAAC,UAAU,SAAS,cAAc,EAC/C,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;;;;;;;;;OAgBG;IACH,uBAAuB,CAAC,UAAU,SAAS,cAAc,EACvD,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,SAAS,UAAU,EAC9B,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,MAAM,SAAS,UAAU,EAC3C,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,SAAS,UAAU,EAC9B,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,MAAM,SAAS,UAAU,EAC3C,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,SAAS,UAAU,EAC9B,KAAK,EAAE,MAAM,GACZ,eAAe,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IACnF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,MAAM,SAAS,UAAU,EAC3C,KAAK,EAAE,MAAM,GACZ,eAAe,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEnF;;;;;;;OAOG;IACH,uBAAuB,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1E;;;;;;;OAOG;IACH,qCAAqC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAErF;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,uBAAuB,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1E;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,0CAA0C,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC3F;AAED;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,SAAS,aAAa,EAC5B,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC7B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;;;;OAOG;IACH,UAAU,CAAC,CAAC,SAAS,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7E;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,CAAC,SAAS,aAAa,EAChC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EACpC,MAAM,EAAE,CAAC,GACR,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,CAAC,SAAS,aAAa,EAClC,UAAU,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EACxC,MAAM,EAAE,CAAC,EACT,KAAK,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GACnB,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,MAAM,WAAW,aAAc,SAAQ,6BAA6B;IAClE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,KAAK,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAErE;;;;;OAKG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE/E;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,KAAK,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE5E;;;;;OAKG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEtF;;;OAGG;IACH,kBAAkB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAErD;;;;;;OAMG;IACH,qBAAqB,CACnB,MAAM,EAAE,aAAa,EAAE,EACvB,QAAQ,CAAC,EAAE,IAAI,EACf,MAAM,CAAC,EAAE,IAAI,GACZ,OAAO,CAAC,4BAA4B,EAAE,CAAC,CAAC;IAE3C;;;;;;OAMG;IACH,wBAAwB,CACtB,MAAM,EAAE,MAAM,EAAE,EAChB,QAAQ,CAAC,EAAE,IAAI,EACf,MAAM,CAAC,EAAE,IAAI,GACZ,OAAO,CAAC,4BAA4B,EAAE,CAAC,CAAC;CAC5C;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,mBAAmB,CAAC,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EAC1E,KAAK,EAAE,CAAC,GACP,OAAO,CACR,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CACxF,CAAC;IAEF;;;;;;;OAOG;IACH,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAEjG;;;;;;;OAOG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACtF;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,YAAY,EAAE,oBAAoB,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4CAA4C;IAC5C,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,yCAAyC;IACzC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;;;;;;;;;;;;;OAgBG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;iBAGX,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAYzB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAGZ,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAYzB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;iBAGP,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAYzB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;iBAGP,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAWzB,CAAC"}
1
+ {"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,63 @@
1
1
  import { MySqlRemoteDatabase, MySqlRemotePreparedQueryHKT, MySqlRemoteQueryResultHKT } from "drizzle-orm/mysql-proxy";
2
- import type { SelectedFields } from "drizzle-orm/mysql-core/query-builders/select.types";
2
+ import { SelectedFields } from "drizzle-orm/mysql-core/query-builders/select.types";
3
3
  import { ForgeSqlOrmOptions } from "../../..";
4
- import { MySqlSelectBuilder } from "drizzle-orm/mysql-core";
4
+ import { MySqlSelectBase, MySqlSelectBuilder } from "drizzle-orm/mysql-core";
5
5
  import type { MySqlTable } from "drizzle-orm/mysql-core/table";
6
6
  import { MySqlDeleteBase, MySqlInsertBuilder, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
7
+ import { SQLWrapper } from "drizzle-orm/sql/sql";
8
+ import type { MySqlQueryResultKind } from "drizzle-orm/mysql-core/session";
9
+ import type { GetSelectTableName, GetSelectTableSelection } from "drizzle-orm/query-builders/select.types";
10
+ /**
11
+ * Type for select queries with field aliasing
12
+ */
7
13
  export type SelectAliasedType = <TSelection extends SelectedFields>(fields: TSelection) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
14
+ /**
15
+ * Type for select distinct queries with field aliasing
16
+ */
8
17
  export type SelectAliasedDistinctType = <TSelection extends SelectedFields>(fields: TSelection) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
18
+ /**
19
+ * Type for select queries with field aliasing and caching
20
+ */
9
21
  export type SelectAliasedCacheableType = <TSelection extends SelectedFields>(fields: TSelection, cacheTtl?: number) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
22
+ /**
23
+ * Type for select distinct queries with field aliasing and caching
24
+ */
10
25
  export type SelectAliasedDistinctCacheableType = <TSelection extends SelectedFields>(fields: TSelection, cacheTtl?: number) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
26
+ /**
27
+ * Type for select queries from table with field aliasing
28
+ */
29
+ export type SelectAllFromAliasedType = <T extends MySqlTable>(table: T) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
30
+ /**
31
+ * Type for select distinct queries from table with field aliasing
32
+ */
33
+ export type SelectAllDistinctFromAliasedType = <T extends MySqlTable>(table: T) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
34
+ /**
35
+ * Type for select queries from table with field aliasing and caching
36
+ */
37
+ export type SelectAllFromCacheableAliasedType = <T extends MySqlTable>(table: T, cacheTtl?: number) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
38
+ /**
39
+ * Type for select distinct queries from table with field aliasing and caching
40
+ */
41
+ export type SelectAllDistinctFromCacheableAliasedType = <T extends MySqlTable>(table: T, cacheTtl?: number) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
42
+ /**
43
+ * Type for executing raw SQL queries with local cache
44
+ */
45
+ export type ExecuteQuery = (query: SQLWrapper | string) => Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
46
+ /**
47
+ * Type for executing raw SQL queries with local and global cache
48
+ */
49
+ export type ExecuteQueryCacheable = (query: SQLWrapper | string, cacheTtl?: number) => Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
50
+ /**
51
+ * Type for insert operations with cache eviction
52
+ */
11
53
  export type InsertAndEvictCacheType = <TTable extends MySqlTable>(table: TTable) => MySqlInsertBuilder<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
54
+ /**
55
+ * Type for update operations with cache eviction
56
+ */
12
57
  export type UpdateAndEvictCacheType = <TTable extends MySqlTable>(table: TTable) => MySqlUpdateBuilder<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
58
+ /**
59
+ * Type for delete operations with cache eviction
60
+ */
13
61
  export type DeleteAndEvictCacheType = <TTable extends MySqlTable>(table: TTable) => MySqlDeleteBase<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
14
62
  /**
15
63
  * Patches a Drizzle database instance with additional methods for aliased selects and cache management.
@@ -1 +1 @@
1
- {"version":3,"file":"additionalActions.d.ts","sourceRoot":"","sources":["../../../../src/lib/drizzle/extensions/additionalActions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACzF,OAAO,EAA4B,kBAAkB,EAA4B,MAAM,UAAU,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,uCAAuC,CAAC;AAiD/C,MAAM,MAAM,iBAAiB,GAAG,CAAC,UAAU,SAAS,cAAc,EAChE,MAAM,EAAE,UAAU,KACf,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE,MAAM,MAAM,yBAAyB,GAAG,CAAC,UAAU,SAAS,cAAc,EACxE,MAAM,EAAE,UAAU,KACf,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE,MAAM,MAAM,0BAA0B,GAAG,CAAC,UAAU,SAAS,cAAc,EACzE,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,KACd,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE,MAAM,MAAM,kCAAkC,GAAG,CAAC,UAAU,SAAS,cAAc,EACjF,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,KACd,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,SAAS,UAAU,EAC9D,KAAK,EAAE,MAAM,KACV,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;AACxF,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,SAAS,UAAU,EAC9D,KAAK,EAAE,MAAM,KACV,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;AACxF,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,SAAS,UAAU,EAC9D,KAAK,EAAE,MAAM,KACV,eAAe,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;AA0VrF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,mBAAmB,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,mBAAmB,CAAC,GAAG,CAAC,GAAG;IAC5B,aAAa,EAAE,iBAAiB,CAAC;IACjC,qBAAqB,EAAE,yBAAyB,CAAC;IACjD,sBAAsB,EAAE,0BAA0B,CAAC;IACnD,8BAA8B,EAAE,kCAAkC,CAAC;IACnE,sBAAsB,EAAE,uBAAuB,CAAC;IAChD,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,sBAAsB,EAAE,uBAAuB,CAAC;IAChD,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,sBAAsB,EAAE,uBAAuB,CAAC;CACjD,CAmFA"}
1
+ {"version":3,"file":"additionalActions.d.ts","sourceRoot":"","sources":["../../../../src/lib/drizzle/extensions/additionalActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACpF,OAAO,EAA4B,kBAAkB,EAA4B,MAAM,UAAU,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,uCAAuC,CAAC;AAS/C,OAAO,EAAkC,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AA4EjD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,UAAU,SAAS,cAAc,EAChE,MAAM,EAAE,UAAU,KACf,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,UAAU,SAAS,cAAc,EACxE,MAAM,EAAE,UAAU,KACf,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,UAAU,SAAS,cAAc,EACzE,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,KACd,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG,CAAC,UAAU,SAAS,cAAc,EACjF,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,KACd,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,SAAS,UAAU,EAC1D,KAAK,EAAE,CAAC,KACL,eAAe,CAClB,kBAAkB,CAAC,CAAC,CAAC,EACrB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EACpF,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,QAAQ,GAAG,SAAS,EAC1D,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL,GAAG,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,SAAS,UAAU,EAClE,KAAK,EAAE,CAAC,KACL,eAAe,CAClB,kBAAkB,CAAC,CAAC,CAAC,EACrB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EACpF,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,QAAQ,GAAG,SAAS,EAC1D,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL,GAAG,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,SAAS,UAAU,EACnE,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,MAAM,KACd,eAAe,CAClB,kBAAkB,CAAC,CAAC,CAAC,EACrB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EACpF,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,QAAQ,GAAG,SAAS,EAC1D,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL,GAAG,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,SAAS,UAAU,EAC3E,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,MAAM,KACd,eAAe,CAClB,kBAAkB,CAAC,CAAC,CAAC,EACrB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EACpF,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,QAAQ,GAAG,SAAS,EAC1D,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL,GAAG,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CACzB,KAAK,EAAE,UAAU,GAAG,MAAM,KACvB,OAAO,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAClC,KAAK,EAAE,UAAU,GAAG,MAAM,EAC1B,QAAQ,CAAC,EAAE,MAAM,KACd,OAAO,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,SAAS,UAAU,EAC9D,KAAK,EAAE,MAAM,KACV,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;AAExF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,SAAS,UAAU,EAC9D,KAAK,EAAE,MAAM,KACV,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;AAExF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,SAAS,UAAU,EAC9D,KAAK,EAAE,MAAM,KACV,eAAe,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;AA+arF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,mBAAmB,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,mBAAmB,CAAC,GAAG,CAAC,GAAG;IAC5B,aAAa,EAAE,iBAAiB,CAAC;IACjC,qBAAqB,EAAE,yBAAyB,CAAC;IACjD,sBAAsB,EAAE,0BAA0B,CAAC;IACnD,8BAA8B,EAAE,kCAAkC,CAAC;IACnE,sBAAsB,EAAE,uBAAuB,CAAC;IAChD,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,sBAAsB,EAAE,uBAAuB,CAAC;IAChD,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,sBAAsB,EAAE,uBAAuB,CAAC;CACjD,CA0MA"}
@@ -58,6 +58,7 @@ export declare function saveTableIfInsideCacheContext<T extends AnyMySqlTable>(t
58
58
  *
59
59
  * @param query - The Drizzle query to cache
60
60
  * @param rows - The query result data to cache
61
+ * @param options - ForgeSqlOrm options
61
62
  * @returns Promise that resolves when the data is saved to local cache
62
63
  *
63
64
  * @example
@@ -67,12 +68,13 @@ export declare function saveTableIfInsideCacheContext<T extends AnyMySqlTable>(t
67
68
  * await saveQueryLocalCacheQuery(query, results);
68
69
  * ```
69
70
  */
70
- export declare function saveQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T, rows: unknown[]): Promise<void>;
71
+ export declare function saveQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T, rows: unknown[], options: ForgeSqlOrmOptions): Promise<void>;
71
72
  /**
72
73
  * Retrieves a query result from the local cache context.
73
74
  * This function checks if a query result is already cached in memory.
74
75
  *
75
76
  * @param query - The Drizzle query to check for cached results
77
+ * @param options - Option Property
76
78
  * @returns Promise that resolves to cached data if found, undefined otherwise
77
79
  *
78
80
  * @example
@@ -85,7 +87,7 @@ export declare function saveQueryLocalCacheQuery<T extends MySqlSelectDynamic<An
85
87
  * // Execute query and cache result
86
88
  * ```
87
89
  */
88
- export declare function getQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T): Promise<unknown[] | undefined>;
90
+ export declare function getQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T, options: ForgeSqlOrmOptions): Promise<unknown[] | undefined>;
89
91
  /**
90
92
  * Evicts cached queries from the local cache context that involve the specified table.
91
93
  * This function removes cached query results that contain the given table name.
@@ -1 +1 @@
1
- {"version":3,"file":"cacheContextUtils.d.ts","sourceRoot":"","sources":["../../src/utils/cacheContextUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAIxF;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,0FAA0F;IAC1F,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,KAAK,EAAE,MAAM,CACX,MAAM,EACN;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,OAAO,EAAE,CAAC;KACjB,CACF,CAAC;CACH;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,4CAAmD,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,iDAAwD,CAAC;AAElG;;;;;;;;;;;;GAYG;AACH,wBAAsB,6BAA6B,CAAC,CAAC,SAAS,aAAa,EACzE,KAAK,EAAE,CAAC,GACP,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,wBAAwB,CAC5C,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EACxD,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAa1C;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAC3C,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EACxD,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAa1C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,SAAS,aAAa,EAChE,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kCAAkC,CACtD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAalB"}
1
+ {"version":3,"file":"cacheContextUtils.d.ts","sourceRoot":"","sources":["../../src/utils/cacheContextUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAIxF;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,0FAA0F;IAC1F,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,KAAK,EAAE,MAAM,CACX,MAAM,EACN;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,OAAO,EAAE,CAAC;KACjB,CACF,CAAC;CACH;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,4CAAmD,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,iDAAwD,CAAC;AAElG;;;;;;;;;;;;GAYG;AACH,wBAAsB,6BAA6B,CAAC,CAAC,SAAS,aAAa,EACzE,KAAK,EAAE,CAAC,GACP,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,wBAAwB,CAC5C,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EACxD,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBvE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,uBAAuB,CAC3C,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EACxD,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAmBvE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,SAAS,aAAa,EAChE,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kCAAkC,CACtD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAalB"}
@@ -35,13 +35,13 @@ export interface MetadataInfo {
35
35
  */
36
36
  export declare const parseDateTime: (value: string | Date, format: string) => Date;
37
37
  /**
38
- * Helper function to validate and format Date objects using DateTime
39
- * @param value - Date object to validate and format
40
- * @param format - DateTime format string
41
- * @returns Formatted date string
42
- * @throws Error if date is invalid
38
+ * Helper function to validate and format a date-like value using Luxon DateTime.
39
+ * @param value - Date object, ISO/RFC2822/SQL/HTTP string, or timestamp (number|string).
40
+ * @param format - DateTime format string (Luxon format tokens).
41
+ * @returns Formatted date string.
42
+ * @throws Error if value cannot be parsed as a valid date.
43
43
  */
44
- export declare function formatDateTime(value: Date, format: string): string;
44
+ export declare function formatDateTime(value: Date | string | number, format: string): string;
45
45
  /**
46
46
  * Gets primary keys from the schema.
47
47
  * @template T - The type of the table schema
@@ -1 +1 @@
1
- {"version":3,"file":"sqlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/sqlUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA0C,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAIzF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnC,8BAA8B;IAC9B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,yCAAyC;IACzC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,0CAA0C;IAC1C,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;IAC7C,kCAAkC;IAClC,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAUD;;;;;GAKG;AAEH,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,GAAG,IAAI,EAAE,QAAQ,MAAM,KAAG,IAyBpE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAOlE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAkCvF;AA0DD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,CAoEnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAC9C,MAAM,EAAE,CAiBV;AAED,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAuBhD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,GAAG,EACf,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,cAAc,GACvB,GAAG,CAmBL;AACD,wBAAgB,wBAAwB,CAAC,UAAU,SAAS,cAAc,EACxE,MAAM,EAAE,UAAU,GACjB;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,CAUtD;AAsED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,UAAU,EACpD,IAAI,EAAE,CAAC,EAAE,EACT,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAClC,CAAC,EAAE,CAUL;AAoCD,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAK/D;AAED,wBAAgB,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEpD"}
1
+ {"version":3,"file":"sqlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/sqlUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA0C,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAIzF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnC,8BAA8B;IAC9B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,yCAAyC;IACzC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,0CAA0C;IAC1C,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;IAC7C,kCAAkC;IAClC,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAUD;;;;;GAKG;AAEH,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,GAAG,IAAI,EAAE,QAAQ,MAAM,KAAG,IAyBpE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgCpF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAkCvF;AA0DD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,CAoEnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAC9C,MAAM,EAAE,CAiBV;AAED,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAuBhD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,GAAG,EACf,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,cAAc,GACvB,GAAG,CAmBL;AACD,wBAAgB,wBAAwB,CAAC,UAAU,SAAS,cAAc,EACxE,MAAM,EAAE,UAAU,GACjB;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,CAUtD;AAsED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,UAAU,EACpD,IAAI,EAAE,CAAC,EAAE,EACT,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAClC,CAAC,EAAE,CAUL;AAoCD,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAK/D;AAED,wBAAgB,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEpD"}