@pdg/drizzle-mssql 0.0.0-stage → 1.0.1

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.
@@ -0,0 +1,90 @@
1
+ import { type SQL } from 'drizzle-orm';
2
+ import type { MsSqlColumn, MsSqlTable, MsSqlTableWithColumns } from 'drizzle-orm/mssql-core';
3
+ import type { BuildAliasTable } from 'drizzle-orm/mssql-core/query-builders/select.types';
4
+ /********************************************************************************************************************
5
+ * MsSqlAliasTable
6
+ * ******************************************************************************************************************/
7
+ export type MsSqlAliasTable<T extends MsSqlTable, Alias extends string> = MsSqlTableWithColumns<Omit<BuildAliasTable<T, Alias>['_'], 'columns'> & {
8
+ columns: {
9
+ [K in keyof T['_']['columns']]: MsSqlColumn<BuildAliasTable<T, Alias>['_']['columns'][K]['_'] & {
10
+ name: T['_']['columns'][K]['_']['name'];
11
+ }>;
12
+ };
13
+ }>;
14
+ /********************************************************************************************************************
15
+ * MsSqlSelectedColumns
16
+ * ******************************************************************************************************************/
17
+ export type MsSqlSelectedColumns<T extends readonly MsSqlColumn[]> = {
18
+ [C in T[number] as C['_']['name']]: C;
19
+ };
20
+ /********************************************************************************************************************
21
+ * MsSqlTableColumns
22
+ * ******************************************************************************************************************/
23
+ export type MsSqlSelectedTableColumns<T extends MsSqlTable> = {
24
+ [K in keyof T['_']['columns'] as string extends T['_']['columns'][K]['_']['name'] ? K : T['_']['columns'][K]['_']['name']]: T['_']['columns'][K];
25
+ };
26
+ /********************************************************************************************************************
27
+ * MsSqlColumnSelectionName
28
+ * ******************************************************************************************************************/
29
+ type AsKeyword = 'as' | 'AS' | 'As' | 'aS';
30
+ export type MsSqlColumnSelectionName<T extends MsSqlTable> = (keyof T['_']['columns'] & string) | `${keyof T['_']['columns'] & string} ${AsKeyword} ${string}`;
31
+ /********************************************************************************************************************
32
+ * MsSqlSelectedNamedColumn
33
+ * ******************************************************************************************************************/
34
+ type MsSqlColumnForName<T extends MsSqlTable, N extends string> = Extract<T['_']['columns'][Extract<N, keyof T['_']['columns']>], MsSqlColumn>;
35
+ /********************************************************************************************************************
36
+ * MsSqlSelectedNamedColumn
37
+ * ******************************************************************************************************************/
38
+ type MsSqlSelectionKey<T extends MsSqlTable, N extends string> = N extends `${string} ${AsKeyword} ${infer Alias}` ? Alias : string extends MsSqlColumnForName<T, N>['_']['name'] ? N : MsSqlColumnForName<T, N>['_']['name'];
39
+ /********************************************************************************************************************
40
+ * MsSqlSelectedNamedColumn
41
+ * ******************************************************************************************************************/
42
+ type MsSqlSelectionValue<T extends MsSqlTable, N extends string> = N extends `${infer Name} ${AsKeyword} ${string}` ? SQL.Aliased<MsSqlColumnForName<T, Name>['_']['data']> : MsSqlColumnForName<T, N>;
43
+ /********************************************************************************************************************
44
+ * MsSqlSelectedNamedColumn
45
+ * ******************************************************************************************************************/
46
+ type MsSqlSelectedNamedColumn<T extends MsSqlTable, N extends string> = {
47
+ [K in MsSqlSelectionKey<T, N>]: MsSqlSelectionValue<T, N>;
48
+ };
49
+ /********************************************************************************************************************
50
+ * MsSqlSelectedNamedColumnUnion
51
+ * ******************************************************************************************************************/
52
+ export type MsSqlSelectedNamedColumnUnion<T extends MsSqlTable, N extends string> = {
53
+ [Name in N as MsSqlSelectionKey<T, Name>]: MsSqlSelectionValue<T, Name>;
54
+ };
55
+ /********************************************************************************************************************
56
+ * MsSqlSelectedNamedColumns
57
+ * ******************************************************************************************************************/
58
+ export type MsSqlSelectedNamedColumns<T extends MsSqlTable, N extends readonly string[], Result = {}> = number extends N['length'] ? {
59
+ [Name in N[number] as MsSqlSelectionKey<T, Name>]: MsSqlSelectionValue<T, Name>;
60
+ } : N extends readonly [infer First extends string, ...infer Rest extends readonly string[]] ? MsSqlSelectedNamedColumns<T, Rest, Omit<Result, MsSqlSelectionKey<T, First>> & MsSqlSelectedNamedColumn<T, First>> : Result;
61
+ /********************************************************************************************************************
62
+ * MsSqlColumnGroup
63
+ * ******************************************************************************************************************/
64
+ type MsSqlColumnGroup = readonly [MsSqlTable, ...string[]];
65
+ /********************************************************************************************************************
66
+ * MsSqlGroupColumns
67
+ * ******************************************************************************************************************/
68
+ type MsSqlGroupColumns<G extends MsSqlColumnGroup> = G extends readonly [infer T extends MsSqlTable, ...infer N] ? N extends readonly [] ? MsSqlSelectedTableColumns<T> : MsSqlSelectedNamedColumns<T, Extract<N, readonly string[]>> : never;
69
+ /********************************************************************************************************************
70
+ * MsSqlMergedGroupColumns
71
+ * ******************************************************************************************************************/
72
+ type MsSqlMergedGroupColumns<G extends readonly MsSqlColumnGroup[], Result = {}> = G extends readonly [
73
+ infer First extends MsSqlColumnGroup,
74
+ ...infer Rest extends readonly MsSqlColumnGroup[]
75
+ ] ? MsSqlMergedGroupColumns<Rest, Omit<Result, keyof MsSqlGroupColumns<First>> & MsSqlGroupColumns<First>> : {
76
+ [P in keyof Result]: Result[P];
77
+ };
78
+ /********************************************************************************************************************
79
+ * MsSqlTableColumns
80
+ * ******************************************************************************************************************/
81
+ export declare function TableColumns<A extends MsSqlTable, const AN extends readonly MsSqlColumnSelectionName<A>[], B extends MsSqlTable, const BN extends readonly MsSqlColumnSelectionName<B>[]>(a: readonly [A, ...AN], b: readonly [B, ...BN]): MsSqlMergedGroupColumns<readonly [readonly [A, ...AN], readonly [B, ...BN]]>;
82
+ export declare function TableColumns<T extends MsSqlTable>(table: T): MsSqlSelectedTableColumns<T>;
83
+ export declare function TableColumns<T extends MsSqlTable, N extends MsSqlColumnSelectionName<T>>(table: T, ...names: N[] & MsSqlColumnSelectionName<T>[]): MsSqlSelectedNamedColumnUnion<T, N>;
84
+ export declare function TableColumns<T extends MsSqlTable, N extends string>(table: T, ...names: N[] & MsSqlColumnSelectionName<T>[]): Record<string, MsSqlColumn | SQL.Aliased>;
85
+ export declare function TableColumns<const T extends readonly MsSqlColumn[]>(columns: T): MsSqlSelectedColumns<T>;
86
+ export declare function TableColumns<const T extends readonly [MsSqlColumn, ...MsSqlColumn[]]>(...columns: T): MsSqlSelectedColumns<T>;
87
+ export declare function TableColumns<const G extends readonly [MsSqlColumnGroup, ...MsSqlColumnGroup[]]>(...groups: G & {
88
+ [I in keyof G]: readonly [G[I][0], ...MsSqlColumnSelectionName<G[I][0]>[]];
89
+ }): MsSqlMergedGroupColumns<G>;
90
+ export {};
@@ -0,0 +1,90 @@
1
+ import { type SQL } from 'drizzle-orm';
2
+ import type { MsSqlColumn, MsSqlTable, MsSqlTableWithColumns } from 'drizzle-orm/mssql-core';
3
+ import type { BuildAliasTable } from 'drizzle-orm/mssql-core/query-builders/select.types';
4
+ /********************************************************************************************************************
5
+ * MsSqlAliasTable
6
+ * ******************************************************************************************************************/
7
+ export type MsSqlAliasTable<T extends MsSqlTable, Alias extends string> = MsSqlTableWithColumns<Omit<BuildAliasTable<T, Alias>['_'], 'columns'> & {
8
+ columns: {
9
+ [K in keyof T['_']['columns']]: MsSqlColumn<BuildAliasTable<T, Alias>['_']['columns'][K]['_'] & {
10
+ name: T['_']['columns'][K]['_']['name'];
11
+ }>;
12
+ };
13
+ }>;
14
+ /********************************************************************************************************************
15
+ * MsSqlSelectedColumns
16
+ * ******************************************************************************************************************/
17
+ export type MsSqlSelectedColumns<T extends readonly MsSqlColumn[]> = {
18
+ [C in T[number] as C['_']['name']]: C;
19
+ };
20
+ /********************************************************************************************************************
21
+ * MsSqlTableColumns
22
+ * ******************************************************************************************************************/
23
+ export type MsSqlSelectedTableColumns<T extends MsSqlTable> = {
24
+ [K in keyof T['_']['columns'] as string extends T['_']['columns'][K]['_']['name'] ? K : T['_']['columns'][K]['_']['name']]: T['_']['columns'][K];
25
+ };
26
+ /********************************************************************************************************************
27
+ * MsSqlColumnSelectionName
28
+ * ******************************************************************************************************************/
29
+ type AsKeyword = 'as' | 'AS' | 'As' | 'aS';
30
+ export type MsSqlColumnSelectionName<T extends MsSqlTable> = (keyof T['_']['columns'] & string) | `${keyof T['_']['columns'] & string} ${AsKeyword} ${string}`;
31
+ /********************************************************************************************************************
32
+ * MsSqlSelectedNamedColumn
33
+ * ******************************************************************************************************************/
34
+ type MsSqlColumnForName<T extends MsSqlTable, N extends string> = Extract<T['_']['columns'][Extract<N, keyof T['_']['columns']>], MsSqlColumn>;
35
+ /********************************************************************************************************************
36
+ * MsSqlSelectedNamedColumn
37
+ * ******************************************************************************************************************/
38
+ type MsSqlSelectionKey<T extends MsSqlTable, N extends string> = N extends `${string} ${AsKeyword} ${infer Alias}` ? Alias : string extends MsSqlColumnForName<T, N>['_']['name'] ? N : MsSqlColumnForName<T, N>['_']['name'];
39
+ /********************************************************************************************************************
40
+ * MsSqlSelectedNamedColumn
41
+ * ******************************************************************************************************************/
42
+ type MsSqlSelectionValue<T extends MsSqlTable, N extends string> = N extends `${infer Name} ${AsKeyword} ${string}` ? SQL.Aliased<MsSqlColumnForName<T, Name>['_']['data']> : MsSqlColumnForName<T, N>;
43
+ /********************************************************************************************************************
44
+ * MsSqlSelectedNamedColumn
45
+ * ******************************************************************************************************************/
46
+ type MsSqlSelectedNamedColumn<T extends MsSqlTable, N extends string> = {
47
+ [K in MsSqlSelectionKey<T, N>]: MsSqlSelectionValue<T, N>;
48
+ };
49
+ /********************************************************************************************************************
50
+ * MsSqlSelectedNamedColumnUnion
51
+ * ******************************************************************************************************************/
52
+ export type MsSqlSelectedNamedColumnUnion<T extends MsSqlTable, N extends string> = {
53
+ [Name in N as MsSqlSelectionKey<T, Name>]: MsSqlSelectionValue<T, Name>;
54
+ };
55
+ /********************************************************************************************************************
56
+ * MsSqlSelectedNamedColumns
57
+ * ******************************************************************************************************************/
58
+ export type MsSqlSelectedNamedColumns<T extends MsSqlTable, N extends readonly string[], Result = {}> = number extends N['length'] ? {
59
+ [Name in N[number] as MsSqlSelectionKey<T, Name>]: MsSqlSelectionValue<T, Name>;
60
+ } : N extends readonly [infer First extends string, ...infer Rest extends readonly string[]] ? MsSqlSelectedNamedColumns<T, Rest, Omit<Result, MsSqlSelectionKey<T, First>> & MsSqlSelectedNamedColumn<T, First>> : Result;
61
+ /********************************************************************************************************************
62
+ * MsSqlColumnGroup
63
+ * ******************************************************************************************************************/
64
+ type MsSqlColumnGroup = readonly [MsSqlTable, ...string[]];
65
+ /********************************************************************************************************************
66
+ * MsSqlGroupColumns
67
+ * ******************************************************************************************************************/
68
+ type MsSqlGroupColumns<G extends MsSqlColumnGroup> = G extends readonly [infer T extends MsSqlTable, ...infer N] ? N extends readonly [] ? MsSqlSelectedTableColumns<T> : MsSqlSelectedNamedColumns<T, Extract<N, readonly string[]>> : never;
69
+ /********************************************************************************************************************
70
+ * MsSqlMergedGroupColumns
71
+ * ******************************************************************************************************************/
72
+ type MsSqlMergedGroupColumns<G extends readonly MsSqlColumnGroup[], Result = {}> = G extends readonly [
73
+ infer First extends MsSqlColumnGroup,
74
+ ...infer Rest extends readonly MsSqlColumnGroup[]
75
+ ] ? MsSqlMergedGroupColumns<Rest, Omit<Result, keyof MsSqlGroupColumns<First>> & MsSqlGroupColumns<First>> : {
76
+ [P in keyof Result]: Result[P];
77
+ };
78
+ /********************************************************************************************************************
79
+ * MsSqlTableColumns
80
+ * ******************************************************************************************************************/
81
+ export declare function TableColumns<A extends MsSqlTable, const AN extends readonly MsSqlColumnSelectionName<A>[], B extends MsSqlTable, const BN extends readonly MsSqlColumnSelectionName<B>[]>(a: readonly [A, ...AN], b: readonly [B, ...BN]): MsSqlMergedGroupColumns<readonly [readonly [A, ...AN], readonly [B, ...BN]]>;
82
+ export declare function TableColumns<T extends MsSqlTable>(table: T): MsSqlSelectedTableColumns<T>;
83
+ export declare function TableColumns<T extends MsSqlTable, N extends MsSqlColumnSelectionName<T>>(table: T, ...names: N[] & MsSqlColumnSelectionName<T>[]): MsSqlSelectedNamedColumnUnion<T, N>;
84
+ export declare function TableColumns<T extends MsSqlTable, N extends string>(table: T, ...names: N[] & MsSqlColumnSelectionName<T>[]): Record<string, MsSqlColumn | SQL.Aliased>;
85
+ export declare function TableColumns<const T extends readonly MsSqlColumn[]>(columns: T): MsSqlSelectedColumns<T>;
86
+ export declare function TableColumns<const T extends readonly [MsSqlColumn, ...MsSqlColumn[]]>(...columns: T): MsSqlSelectedColumns<T>;
87
+ export declare function TableColumns<const G extends readonly [MsSqlColumnGroup, ...MsSqlColumnGroup[]]>(...groups: G & {
88
+ [I in keyof G]: readonly [G[I][0], ...MsSqlColumnSelectionName<G[I][0]>[]];
89
+ }): MsSqlMergedGroupColumns<G>;
90
+ export {};
@@ -0,0 +1,106 @@
1
+ import * as native from 'drizzle-orm';
2
+ import { MsSqlTable } from 'drizzle-orm/mssql-core';
3
+ import type { Column, SQL } from 'drizzle-orm';
4
+ import type { MsSqlColumnName, MsSqlConditions, MsSqlNullConditionInput } from './@types/index.cjs';
5
+ export declare function createConditions<TSchema extends Record<string, MsSqlTable>>(schema: TSchema): {
6
+ eq: {
7
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
8
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlCompareValues<T> | undefined): SQL | undefined;
9
+ } & {
10
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
11
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
12
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
13
+ };
14
+ ne: {
15
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
16
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlCompareValues<T> | undefined): SQL | undefined;
17
+ } & {
18
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
19
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
20
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
21
+ };
22
+ gt: {
23
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
24
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlCompareValues<T> | undefined): SQL | undefined;
25
+ } & {
26
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
27
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
28
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
29
+ };
30
+ gte: {
31
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
32
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlCompareValues<T> | undefined): SQL | undefined;
33
+ } & {
34
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
35
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
36
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
37
+ };
38
+ lt: {
39
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
40
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlCompareValues<T> | undefined): SQL | undefined;
41
+ } & {
42
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
43
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
44
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
45
+ };
46
+ lte: {
47
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
48
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlCompareValues<T> | undefined): SQL | undefined;
49
+ } & {
50
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
51
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
52
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
53
+ };
54
+ inArray: {
55
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlArrayCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
56
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlArrayCompareValues<T> | undefined): SQL | undefined;
57
+ } & typeof native.inArray;
58
+ notInArray: {
59
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlArrayCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
60
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlArrayCompareValues<T> | undefined): SQL | undefined;
61
+ } & typeof native.notInArray;
62
+ between: {
63
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlRangeCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
64
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlRangeCompareValues<T> | undefined): SQL | undefined;
65
+ } & typeof native.between;
66
+ notBetween: {
67
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlRangeCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
68
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlRangeCompareValues<T> | undefined): SQL | undefined;
69
+ } & typeof native.notBetween;
70
+ like: {
71
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
72
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
73
+ } & typeof native.like;
74
+ notLike: {
75
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
76
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
77
+ } & typeof native.notLike;
78
+ ilike: {
79
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
80
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
81
+ } & typeof native.ilike;
82
+ notIlike: {
83
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
84
+ <T extends MsSqlTable>(table: T, values: import("./index.cjs").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
85
+ } & typeof native.notIlike;
86
+ isNull: {
87
+ <T extends MsSqlTable>(table: T, name: MsSqlColumnName<T>): SQL;
88
+ <T extends MsSqlTable>(table: T, names: MsSqlNullConditionInput<T>): SQL | undefined;
89
+ <K extends keyof TSchema & string>(table: K, name: MsSqlColumnName<(typeof schema)[K]>): SQL;
90
+ <K extends keyof TSchema & string>(table: K, names: MsSqlNullConditionInput<(typeof schema)[K]>): SQL | undefined;
91
+ } & typeof native.isNull;
92
+ isNotNull: {
93
+ <T extends MsSqlTable>(table: T, name: MsSqlColumnName<T>): SQL;
94
+ <T extends MsSqlTable>(table: T, names: MsSqlNullConditionInput<T>): SQL | undefined;
95
+ <K extends keyof TSchema & string>(table: K, name: MsSqlColumnName<(typeof schema)[K]>): SQL;
96
+ <K extends keyof TSchema & string>(table: K, names: MsSqlNullConditionInput<(typeof schema)[K]>): SQL | undefined;
97
+ } & typeof native.isNotNull;
98
+ and: {
99
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, options: MsSqlConditions<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>>): SQL | undefined;
100
+ <T extends MsSqlTable>(table: T, options: MsSqlConditions<T>): SQL | undefined;
101
+ } & ((...conditions: (native.SQLWrapper | false | undefined)[]) => SQL | undefined);
102
+ or: {
103
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, options: MsSqlConditions<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>>): SQL | undefined;
104
+ <T extends MsSqlTable>(table: T, options: MsSqlConditions<T>): SQL | undefined;
105
+ } & ((...conditions: (native.SQLWrapper | false | undefined)[]) => SQL | undefined);
106
+ };
@@ -0,0 +1,106 @@
1
+ import * as native from 'drizzle-orm';
2
+ import { MsSqlTable } from 'drizzle-orm/mssql-core';
3
+ import type { Column, SQL } from 'drizzle-orm';
4
+ import type { MsSqlColumnName, MsSqlConditions, MsSqlNullConditionInput } from './@types/index.js';
5
+ export declare function createConditions<TSchema extends Record<string, MsSqlTable>>(schema: TSchema): {
6
+ eq: {
7
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
8
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlCompareValues<T> | undefined): SQL | undefined;
9
+ } & {
10
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
11
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
12
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
13
+ };
14
+ ne: {
15
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
16
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlCompareValues<T> | undefined): SQL | undefined;
17
+ } & {
18
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
19
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
20
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
21
+ };
22
+ gt: {
23
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
24
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlCompareValues<T> | undefined): SQL | undefined;
25
+ } & {
26
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
27
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
28
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
29
+ };
30
+ gte: {
31
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
32
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlCompareValues<T> | undefined): SQL | undefined;
33
+ } & {
34
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
35
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
36
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
37
+ };
38
+ lt: {
39
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
40
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlCompareValues<T> | undefined): SQL | undefined;
41
+ } & {
42
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
43
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
44
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
45
+ };
46
+ lte: {
47
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
48
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlCompareValues<T> | undefined): SQL | undefined;
49
+ } & {
50
+ <TColumn extends Column>(left: TColumn, right: native.GetColumnData<TColumn, "raw"> | native.SQLWrapper): SQL;
51
+ <T>(left: SQL.Aliased<T>, right: T | native.SQLWrapper): SQL;
52
+ <T extends native.SQLWrapper>(left: Exclude<T, MsSqlTable>, right: unknown): SQL;
53
+ };
54
+ inArray: {
55
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlArrayCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
56
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlArrayCompareValues<T> | undefined): SQL | undefined;
57
+ } & typeof native.inArray;
58
+ notInArray: {
59
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlArrayCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
60
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlArrayCompareValues<T> | undefined): SQL | undefined;
61
+ } & typeof native.notInArray;
62
+ between: {
63
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlRangeCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
64
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlRangeCompareValues<T> | undefined): SQL | undefined;
65
+ } & typeof native.between;
66
+ notBetween: {
67
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlRangeCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
68
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlRangeCompareValues<T> | undefined): SQL | undefined;
69
+ } & typeof native.notBetween;
70
+ like: {
71
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
72
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
73
+ } & typeof native.like;
74
+ notLike: {
75
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
76
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
77
+ } & typeof native.notLike;
78
+ ilike: {
79
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
80
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
81
+ } & typeof native.ilike;
82
+ notIlike: {
83
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>> | undefined): SQL | undefined;
84
+ <T extends MsSqlTable>(table: T, values: import("./index.js").MsSqlPatternCompareValues<T> | undefined): SQL | undefined;
85
+ } & typeof native.notIlike;
86
+ isNull: {
87
+ <T extends MsSqlTable>(table: T, name: MsSqlColumnName<T>): SQL;
88
+ <T extends MsSqlTable>(table: T, names: MsSqlNullConditionInput<T>): SQL | undefined;
89
+ <K extends keyof TSchema & string>(table: K, name: MsSqlColumnName<(typeof schema)[K]>): SQL;
90
+ <K extends keyof TSchema & string>(table: K, names: MsSqlNullConditionInput<(typeof schema)[K]>): SQL | undefined;
91
+ } & typeof native.isNull;
92
+ isNotNull: {
93
+ <T extends MsSqlTable>(table: T, name: MsSqlColumnName<T>): SQL;
94
+ <T extends MsSqlTable>(table: T, names: MsSqlNullConditionInput<T>): SQL | undefined;
95
+ <K extends keyof TSchema & string>(table: K, name: MsSqlColumnName<(typeof schema)[K]>): SQL;
96
+ <K extends keyof TSchema & string>(table: K, names: MsSqlNullConditionInput<(typeof schema)[K]>): SQL | undefined;
97
+ } & typeof native.isNotNull;
98
+ and: {
99
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, options: MsSqlConditions<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>>): SQL | undefined;
100
+ <T extends MsSqlTable>(table: T, options: MsSqlConditions<T>): SQL | undefined;
101
+ } & ((...conditions: (native.SQLWrapper | false | undefined)[]) => SQL | undefined);
102
+ or: {
103
+ <T extends (keyof TSchema & string) | MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>(table: T, options: MsSqlConditions<T extends keyof TSchema & string ? TSchema[T] : Extract<T, MsSqlTable<import("drizzle-orm/mssql-core").TableConfig>>>): SQL | undefined;
104
+ <T extends MsSqlTable>(table: T, options: MsSqlConditions<T>): SQL | undefined;
105
+ } & ((...conditions: (native.SQLWrapper | false | undefined)[]) => SQL | undefined);
106
+ };