diff --git a/deno/types/index.d.ts b/deno/types/index.d.ts index 2088662d..84e923c6 100644 --- a/deno/types/index.d.ts +++ b/deno/types/index.d.ts @@ -1,5 +1,6 @@ import { Buffer } from 'https://deno.land/std@0.132.0/node/buffer.ts' import process from 'https://deno.land/std@0.132.0/node/process.ts' +import { Socket } from "https://deno.land/std@0.132.0/node/net.ts" import { Readable, Writable } from 'https://deno.land/std@0.132.0/node/stream.ts' /** @@ -124,6 +125,8 @@ interface BaseOptions<T extends Record<string, postgres.PostgresType>> { backoff: boolean | ((attemptNum: number) => number); max_lifetime: number | null; keep_alive: number | null; + /** fn returning custom socket to use */ + socket: (options: postgres.ParsedOptions<T>) => Socket | Promise<Socket> } diff --git a/transpile.deno.js b/transpile.deno.js index f077677b..c1be44e5 100644 --- a/transpile.deno.js +++ b/transpile.deno.js @@ -84,6 +84,7 @@ function transpile(x, name, folder) { '(query.writable.push({ chunk }), callback())' ) .replace('socket.setKeepAlive(true, 1000 * keep_alive)', 'socket.setKeepAlive(true)') + .replace('node:net', std + 'node/net.ts') .replace('node:stream', std + 'node/stream.ts') .replace('import net from \'net\'', 'import { net } from \'../polyfills.js\'') .replace('import tls from \'tls\'', 'import { tls } from \'../polyfills.js\'') diff --git a/types/index.d.ts b/types/index.d.ts index 8989ff47..8e61d9b8 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -1,3 +1,4 @@ +import { Socket } from "node:net" import { Readable, Writable } from 'node:stream' /** @@ -122,6 +123,8 @@ interface BaseOptions<T extends Record<string, postgres.PostgresType>> { backoff: boolean | ((attemptNum: number) => number); max_lifetime: number | null; keep_alive: number | null; + /** fn returning custom socket to use */ + socket: (options: postgres.ParsedOptions<T>) => Socket | Promise<Socket> }