diff --git a/types/pg-query-stream/index.d.ts b/types/pg-query-stream/index.d.ts index 34331358e7..ce1efedf5a 100644 --- a/types/pg-query-stream/index.d.ts +++ b/types/pg-query-stream/index.d.ts @@ -6,6 +6,7 @@ /// import stream = require("stream"); +import pg = require("pg"); declare namespace QueryStream { interface Options { @@ -14,11 +15,12 @@ declare namespace QueryStream { } } -declare class QueryStream extends stream.Readable { +declare class QueryStream extends stream.Readable implements pg.Submittable { batchSize: number; text: string; values?: any[]; constructor(text: string, values?: any[], options?: QueryStream.Options); + submit(connection: pg.Connection): void; } export = QueryStream; diff --git a/types/pg/index.d.ts b/types/pg/index.d.ts index 279659a9aa..621a3aa1b8 100644 --- a/types/pg/index.d.ts +++ b/types/pg/index.d.ts @@ -51,6 +51,10 @@ export interface QueryConfig { values?: any[]; } +export interface Submittable { + submit: (connection: Connection) => void; +} + export interface QueryArrayConfig extends QueryConfig { rowMode: 'array'; } @@ -148,7 +152,7 @@ export class Pool extends events.EventEmitter { end(): Promise; end(callback: () => void): void; - query(queryStream: QueryConfig & stream.Readable): stream.Readable; + query(queryStream: T): T; query(queryConfig: QueryArrayConfig): Promise; query(queryConfig: QueryConfig): Promise; query(queryTextOrConfig: string | QueryConfig, values?: any[]): Promise; @@ -166,7 +170,7 @@ export class ClientBase extends events.EventEmitter { connect(): Promise; connect(callback: (err: Error) => void): void; - query(queryStream: QueryConfig & stream.Readable): stream.Readable; + query(queryStream: T): T; query(queryConfig: QueryArrayConfig): Promise; query(queryConfig: QueryConfig): Promise; query(queryTextOrConfig: string | QueryConfig, values?: any[]): Promise;