mirror of
https://github.com/arthur-pbty/portfolio2023.git
synced 2026-06-10 02:44:31 +02:00
60 lines
1.8 KiB
TypeScript
60 lines
1.8 KiB
TypeScript
/// <reference path="../../adonis-typings/index.d.ts" />
|
|
import { DialectContract, QueryClientContract, SqliteConfig } from '@ioc:Adonis/Lucid/Database';
|
|
export declare abstract class BaseSqliteDialect implements DialectContract {
|
|
private client;
|
|
private config;
|
|
abstract readonly name: 'sqlite3' | 'better-sqlite3';
|
|
readonly supportsAdvisoryLocks = false;
|
|
readonly supportsViews = true;
|
|
readonly supportsTypes = false;
|
|
readonly supportsReturningStatement = false;
|
|
/**
|
|
* Reference to the database version. Knex.js fetches the version after
|
|
* the first database query, so it will be set to undefined initially
|
|
*/
|
|
readonly version: any;
|
|
/**
|
|
* The default format for datetime column. The date formats is
|
|
* valid for luxon date parsing library
|
|
*/
|
|
readonly dateTimeFormat = "yyyy-MM-dd HH:mm:ss";
|
|
constructor(client: QueryClientContract, config: SqliteConfig);
|
|
/**
|
|
* Returns an array of table names
|
|
*/
|
|
getAllTables(): Promise<any[]>;
|
|
/**
|
|
* Returns an array of all views names
|
|
*/
|
|
getAllViews(): Promise<string[]>;
|
|
/**
|
|
* Returns an array of all types names
|
|
*/
|
|
getAllTypes(): Promise<string[]>;
|
|
/**
|
|
* Truncate SQLITE tables
|
|
*/
|
|
truncate(table: string): Promise<void>;
|
|
/**
|
|
* Drop all tables inside the database
|
|
*/
|
|
dropAllTables(): Promise<void>;
|
|
/**
|
|
* Drop all views inside the database
|
|
*/
|
|
dropAllViews(): Promise<void>;
|
|
/**
|
|
* Drop all custom types inside the database
|
|
*/
|
|
dropAllTypes(): Promise<void>;
|
|
/**
|
|
* Attempts to add advisory lock to the database and
|
|
* returns it's status.
|
|
*/
|
|
getAdvisoryLock(): Promise<boolean>;
|
|
/**
|
|
* Releases the advisory lock
|
|
*/
|
|
releaseAdvisoryLock(): Promise<boolean>;
|
|
}
|