database-mcp
Version:
Model Context Protocol server for multi-database access (PostgreSQL, MySQL, SQLite, Snowflake) with comprehensive introspection and analysis tools
53 lines • 1.99 kB
TypeScript
/**
* Database Factory
* Creates appropriate database instances based on connection strings
*/
import DatabaseInterface from './base';
import { DatabaseType, ValidationResult } from '../types/database';
declare class DatabaseFactory {
/**
* Create a database instance based on connection string
* @param {string} connectionString - Database connection string
* @returns {DatabaseInterface} - Database implementation instance
*/
static create(connectionString: string): DatabaseInterface;
/**
* Detect database type from connection string
* @param {string} connectionString - Database connection string
* @returns {string} - Database type (postgresql, mysql, sqlite, snowflake)
*/
static detectDatabaseType(connectionString: string): DatabaseType;
/**
* Get supported database types
* @returns {Array<string>} - Array of supported database types
*/
static getSupportedTypes(): string[];
/**
* Get database type display name
* @param {string} type - Database type
* @returns {string} - Display name
*/
static getDisplayName(type: DatabaseType): string;
/**
* Get example connection strings for each database type
* @returns {Object} - Object with example connection strings
*/
static getConnectionStringExamples(): {
postgresql: string[];
mysql: string[];
sqlite: string[];
snowflake: string[];
};
/**
* Validate connection string format
* @param {string} connectionString - Connection string to validate
* @returns {Object} - Validation result with isValid and errors
*/
static validateConnectionString(connectionString: string): ValidationResult;
private static _validatePostgreSQLString;
private static _validateMySQLString;
private static _validateSQLiteString;
private static _validateSnowflakeString;
}
export default DatabaseFactory;
//# sourceMappingURL=factory.d.ts.map