/** * @copyright Cube Dev, Inc. * @license Apache-2.0 * @fileoverview Named pool wrapper around generic-pool with enhanced error messages. */ import { Factory, Options } from 'generic-pool'; export declare class PoolTimeoutError extends Error { protected readonly poolName: string; constructor(poolName: string); } export type PoolFactory = Factory; export type PoolOptions = Options; export type PoolUserOptions = Pick; /** * Uses composition instead of inheritance because generic-pool doesn't export * a Pool class, the Pool type is an interface, not an extendable class. */ export declare class Pool { private readonly pool; private readonly name; constructor(name: string, factory: PoolFactory, options?: Options); acquire(priority?: number): Promise; release(resource: T): Promise; destroy(resource: T): Promise; drain(): Promise; clear(): Promise; use(cb: (resource: T) => U | Promise): Promise; get size(): number; get available(): number; get borrowed(): number; get pending(): number; get max(): number; get min(): number; get options(): { max: number; min: number; }; on(event: 'factoryCreateError' | 'factoryDestroyError', listener: (err: Error) => void): this; get _factory(): Factory; } //# sourceMappingURL=pool.d.ts.map