From f985e6921849304f5f35accc8cd66bd9f42a6ef6 Mon Sep 17 00:00:00 2001 From: Kevin Mas Ruiz Date: Thu, 4 Sep 2025 13:05:57 +0200 Subject: [PATCH] fix: typings for mongodb-connection-string-url --- src/common/connectionManager.ts | 2 +- src/helpers/connectionOptions.ts | 2 +- src/types/mongodb-connection-string-url.d.ts | 69 -------------------- tsconfig.build.json | 7 +- 4 files changed, 8 insertions(+), 72 deletions(-) delete mode 100644 src/types/mongodb-connection-string-url.d.ts diff --git a/src/common/connectionManager.ts b/src/common/connectionManager.ts index 15ad8e2d9..ac7a9b5a1 100644 --- a/src/common/connectionManager.ts +++ b/src/common/connectionManager.ts @@ -1,6 +1,6 @@ import { EventEmitter } from "events"; import type { MongoClientOptions } from "mongodb"; -import ConnectionString from "mongodb-connection-string-url"; +import { ConnectionString } from "mongodb-connection-string-url"; import { NodeDriverServiceProvider } from "@mongosh/service-provider-node-driver"; import { type ConnectionInfo, generateConnectionInfoFromCliArgs } from "@mongosh/arg-parser"; import type { DeviceId } from "../helpers/deviceId.js"; diff --git a/src/helpers/connectionOptions.ts b/src/helpers/connectionOptions.ts index f0e86fe2e..4a63531d8 100644 --- a/src/helpers/connectionOptions.ts +++ b/src/helpers/connectionOptions.ts @@ -1,5 +1,5 @@ import type { MongoClientOptions } from "mongodb"; -import ConnectionString from "mongodb-connection-string-url"; +import { ConnectionString } from "mongodb-connection-string-url"; export interface AppNameComponents { appName: string; diff --git a/src/types/mongodb-connection-string-url.d.ts b/src/types/mongodb-connection-string-url.d.ts deleted file mode 100644 index 01a0cff2d..000000000 --- a/src/types/mongodb-connection-string-url.d.ts +++ /dev/null @@ -1,69 +0,0 @@ -declare module "mongodb-connection-string-url" { - import { URL } from "whatwg-url"; - import { redactConnectionString, ConnectionStringRedactionOptions } from "./redact"; - export { redactConnectionString, ConnectionStringRedactionOptions }; - declare class CaseInsensitiveMap extends Map { - delete(name: K): boolean; - get(name: K): string | undefined; - has(name: K): boolean; - set(name: K, value: any): this; - _normalizeKey(name: any): K; - } - declare abstract class URLWithoutHost extends URL { - abstract get host(): never; - abstract set host(value: never); - abstract get hostname(): never; - abstract set hostname(value: never); - abstract get port(): never; - abstract set port(value: never); - abstract get href(): string; - abstract set href(value: string); - } - export interface ConnectionStringParsingOptions { - looseValidation?: boolean; - } - export declare class ConnectionString extends URLWithoutHost { - _hosts: string[]; - constructor(uri: string, options?: ConnectionStringParsingOptions); - get host(): never; - set host(_ignored: never); - get hostname(): never; - set hostname(_ignored: never); - get port(): never; - set port(_ignored: never); - get href(): string; - set href(_ignored: string); - get isSRV(): boolean; - get hosts(): string[]; - set hosts(list: string[]); - toString(): string; - clone(): ConnectionString; - redact(options?: ConnectionStringRedactionOptions): ConnectionString; - typedSearchParams(): { - append(name: keyof T & string, value: any): void; - delete(name: keyof T & string): void; - get(name: keyof T & string): string | null; - getAll(name: keyof T & string): string[]; - has(name: keyof T & string): boolean; - set(name: keyof T & string, value: any): void; - keys(): IterableIterator; - values(): IterableIterator; - entries(): IterableIterator<[keyof T & string, string]>; - _normalizeKey(name: keyof T & string): string; - [Symbol.iterator](): IterableIterator<[keyof T & string, string]>; - sort(): void; - forEach( - callback: (this: THIS_ARG, value: string, name: string, searchParams: any) => void, - thisArg?: THIS_ARG | undefined - ): void; - readonly [Symbol.toStringTag]: "URLSearchParams"; - }; - } - export declare class CommaAndColonSeparatedRecord< - K extends {} = Record, - > extends CaseInsensitiveMap { - constructor(from?: string | null); - toString(): string; - } - export default ConnectionString; -} diff --git a/tsconfig.build.json b/tsconfig.build.json index b21c6771e..aa40521ba 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -17,7 +17,12 @@ "typeRoots": ["./node_modules/@types", "./src/types"], "noImplicitReturns": true, "declaration": true, - "declarationMap": true + "declarationMap": true, + "paths": { + "mongodb-connection-string-url": [ + "./node_modules/mongodb-connection-string-url/lib/index.d.ts" + ] + } }, "include": ["src/**/*.ts"] }