@queryleaf/postgres-server
Version:
PostgreSQL wire-compatible server for QueryLeaf
43 lines (42 loc) • 1.3 kB
TypeScript
#!/usr/bin/env node
import { MongoClient } from 'mongodb';
import { ProtocolHandler } from './protocol-handler';
/**
* PostgreSQL wire protocol server for QueryLeaf
*/
declare class PostgresServer {
private server;
private mongoClient;
private queryLeaf;
private connections;
private maxConnections;
private authPassthrough;
private dbName;
private mongoUri;
/**
* Create a new PostgreSQL wire protocol server
* @param mongoClient MongoDB client
* @param dbName MongoDB database name
* @param options Server options
*/
constructor(mongoClient: MongoClient, dbName: string, options: {
port: number;
host: string;
maxConnections: number;
authPassthrough?: boolean;
mongoUri?: string;
});
/**
* Start listening for connections
* @param port Port to listen on
* @param host Host to listen on
* @returns A promise that resolves when the server is listening
*/
listen(port: number, host: string): Promise<void>;
/**
* Shutdown the server and close all connections
* @param exitProcess Whether to exit the process after shutdown (default: false)
*/
shutdown(exitProcess?: boolean): Promise<void>;
}
export { PostgresServer, ProtocolHandler };