export type DatabaseDialect = 'postgresql' | 'mysql' | 'sqlite';
export interface IDatabaseConfig {
    dialect: DatabaseDialect;
    supportsJsonOperations: boolean;
    supportsArrayOperations: boolean;
    supportsCaseInsensitive: boolean;
    supportsFullTextSearch: boolean;
    defaultStringComparison: 'sensitive' | 'insensitive';
}
export declare class DatabaseDialectDetector {
    private static configs;
    static detectDialect(prismaClient?: any, connectionString?: string): DatabaseDialect;
    static getConfig(dialect: DatabaseDialect): IDatabaseConfig;
    static supportsFeature(dialect: DatabaseDialect, feature: keyof IDatabaseConfig): boolean;
    static getQueryHints(dialect: DatabaseDialect): {
        useIndexHints: boolean;
        preferSubqueries: boolean;
        optimizeJsonQueries: boolean;
    };
    static adjustQueryForDialect(query: any, dialect: DatabaseDialect): any;
    private static adjustWhereClause;
    private static adjustFieldCondition;
    private static adjustOrderByClause;
}
