import { PluginContext, DatabasePlugin, DatabasePluginConfig } from './types';
import { TypedPlugin } from './plugin-types';
export declare class DatabaseQueryPlugin implements TypedPlugin<'database'> {
    name: 'database';
    version: string;
    config: DatabasePluginConfig;
    methods?: DatabasePlugin;
    private context?;
    constructor(config?: DatabasePluginConfig);
    init(context: PluginContext): void;
    private truncateQuery;
    private formatDuration;
    private sanitizeQuery;
    query(sql: string, duration?: number, rowCount?: number, params?: any[]): void;
    error(sql: string, error: Error | string, params?: any[]): void;
    transaction(id: string, action: 'begin' | 'commit' | 'rollback', duration?: number): void;
    slowQuery(sql: string, duration: number, params?: any[]): void;
    destroy(): void;
}
export declare function createDatabasePlugin(config?: DatabasePluginConfig): DatabaseQueryPlugin;
//# sourceMappingURL=database.d.ts.map