/**
 * PostgreSQL Client Library for Stock Bot
 *
 * Provides type-safe PostgreSQL access for operational data,
 * transactions, and relational queries.
 */

export { PostgreSQLClient } from './client';
export { PostgreSQLHealthMonitor } from './health';
export { PostgreSQLTransactionManager } from './transactions';
export { PostgreSQLQueryBuilder } from './query-builder';
// export { PostgreSQLMigrationManager } from './migrations'; // TODO: Implement migrations

// Types
export type {
  PostgreSQLClientConfig,
  PostgreSQLConnectionOptions,
  PostgreSQLHealthStatus,
  PostgreSQLMetrics,
  QueryResult,
  TransactionCallback,
  SchemaNames,
  TableNames,
  Trade,
  Order,
  Position,
  Portfolio,
  Strategy,
  RiskLimit,
  AuditLog,
  PoolMetrics,
  ConnectionEvents,
  DynamicPoolConfig,
} from './types';

// Note: Factory functions removed - instantiate directly with new PostgreSQLClient()
// or use the Awilix DI container (recommended)
