// Galactic - Discord moderation bot // Copyright (C) 2024 Navy.gif // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with this program. If not, see . import { MongoClientOptions } from 'mongodb'; import { PoolClusterConfig, PoolConfig } from 'mysql'; export type MariaError = { code: string, errno: number, fatal: boolean, sql: string, sqlState: string, sqlMessage:string } & Error export type Credentials = { user: string, password: string, host: string, port: number, database: string } type DBOptions = { load?: boolean, tables: string[] } export type MongoDBOptions = { client?: MongoClientOptions, } & DBOptions export type MariaDBOptions = { cluster?: PoolClusterConfig, client?: PoolConfig, } & DBOptions export type StorageManagerOptions = { [key: string]: MariaDBOptions | MongoDBOptions mongodb: MongoDBOptions, mariadb: MariaDBOptions } export type ProviderOptions = { name?: string, tables: string[], } export type TableOptions = { name: string } export type MongoDBTableOptions = { // } & TableOptions export type MariaDBTableOptions = { // } & TableOptions