ts-sql-query
Version:
Type-safe SQL query builder like QueryDSL or JOOQ in Java or Linq in .Net for TypeScript with MariaDB, MySql, Oracle, PostgreSql, Sqlite and SqlServer support.
36 lines (35 loc) • 1.14 kB
TypeScript
import type { anyDBType, mariaDBType, mySqlType, nextMethodNotSupportedByThisConnection, noopDBType, oracleType, postgreSqlType, sqliteType, sqlServerType, typeSafeDBType, typeUnsafeDBType } from "./utils/symbols";
export interface AnyDB {
[anyDBType]: 'AnyDB';
}
export interface TypeSafeDB extends AnyDB {
[typeSafeDBType]: 'TypeSafe';
}
export type TypeWhenSafeDB<DB extends AnyDB, when, els> = DB extends TypeSafeDB ? when : els;
export interface TypeUnsafeDB extends AnyDB {
[typeUnsafeDBType]: 'TypeUnsafe';
}
export interface MariaDB extends AnyDB {
[mariaDBType]: 'MariaDB';
}
export interface MySql extends AnyDB {
[mySqlType]: 'MySql';
}
export interface NoopDB extends AnyDB {
[noopDBType]: 'NoopDB';
}
export interface Oracle extends AnyDB {
[oracleType]: 'Oracle';
}
export interface PostgreSql extends AnyDB {
[postgreSqlType]: 'PostgreSql';
}
export interface Sqlite extends AnyDB {
[sqliteType]: 'Sqlite';
}
export interface SqlServer extends AnyDB {
[sqlServerType]: 'SqlServer';
}
export interface NotSupportedDB {
[nextMethodNotSupportedByThisConnection]: 'NotSupportedDB';
}