/// <reference types="node" />
import { Client as PostgresClient } from "pg";
import { MongoClient, Db } from "mongodb";
import { EventEmitter } from "events";
import { Config, ModelSchema } from "./types";
declare class ORM extends EventEmitter {
    private models;
    private config;
    client?: PostgresClient;
    mongoClient?: MongoClient;
    mongoDb?: Db;
    private wss;
    private clients;
    constructor();
    initialize(config: Config): Promise<void>;
    private startWebSocketServer;
    broadcast(event: string, data: any): void;
    defineModel<T extends {
        _id: any;
    }>(name: string, schema: ModelSchema): any;
    private definePostgresModel;
    private defineMongoModel;
    private setupPostgresListeners;
}
export default ORM;
