import { BaseDriver } from "..";
import { MongodbQueryBuilder } from "./MongodbQueryBuilder";
import type { TConnection, TPoolEvent } from "../../../types";
export declare class MongodblDriver extends BaseDriver {
    private db;
    private _connecting;
    constructor(options: Record<string, any>);
    connect(this: MongodblDriver): {
        database: () => string;
        on: (event: TPoolEvent, data: any) => MongodblDriver;
        queryBuilder: typeof MongodbQueryBuilder;
        query: (collection: string) => Promise<any>;
        connection: () => Promise<TConnection>;
        end: () => Promise<void>;
    };
    disconnect(pool: any): void;
    private _query;
    private _connection;
    private _end;
    protected meta(results: any, pipeline: string): void;
    protected returning(results: any): any;
    private _parseInput;
    protected _detectQueryType(query: string): "SELECT" | "UPDATE" | "DELETE" | "INSERT" | "UNKNOWN";
}
