UNPKG

kysely

Version:

Type safe SQL query builder

57 lines (56 loc) 2.72 kB
import type { ControlConnectionProvider, DatabaseConnection, QueryResult } from '../../driver/database-connection.js'; import type { Driver, TransactionSettings } from '../../driver/driver.js'; import { CompiledQuery } from '../../query-compiler/compiled-query.js'; import type { QueryCompiler } from '../../query-compiler/query-compiler.js'; import type { AbortableOperationOptions } from '../../util/abort.js'; import type { MysqlDialectConfig, MysqlPoolConnection } from './mysql-dialect-config.js'; declare const PRIVATE_RELEASE_METHOD: unique symbol; export declare class MysqlDriver implements Driver { #private; constructor(config: MysqlDialectConfig); /** * Initializes the driver. * * After calling this method the driver should be usable and `acquireConnection` etc. * methods should be callable. */ init(options?: AbortableOperationOptions): Promise<void>; /** * Acquires a new connection from the pool. */ acquireConnection(options?: AbortableOperationOptions): Promise<DatabaseConnection>; /** * Begins a transaction. */ beginTransaction(connection: DatabaseConnection, settings: TransactionSettings): Promise<void>; /** * Commits a transaction. */ commitTransaction(connection: DatabaseConnection): Promise<void>; /** * Rolls back a transaction. */ rollbackTransaction(connection: DatabaseConnection): Promise<void>; savepoint(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>; rollbackToSavepoint(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>; releaseSavepoint(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>; /** * Releases a connection back to the pool. */ releaseConnection(connection: MysqlConnection): Promise<void>; /** * Destroys the driver and releases all resources. */ destroy(): Promise<void>; } declare class MysqlConnection implements DatabaseConnection { #private; constructor(connection: MysqlPoolConnection, controlConnection: MysqlDialectConfig['controlConnection']); cancelQuery(controlConnectionProvider: ControlConnectionProvider): Promise<void>; collectSessionInfo(): Promise<void>; executeQuery<O>(compiledQuery: CompiledQuery): Promise<QueryResult<O>>; killSession(controlConnectionProvider: ControlConnectionProvider): Promise<void>; streamQuery<O>(compiledQuery: CompiledQuery, _chunkSize: number): AsyncIterableIterator<QueryResult<O>>; [PRIVATE_RELEASE_METHOD](): void; } export {};