import { MongoClient } from "mongodb";
import type { Transport } from "./types.js";
/** Decrypts the embedded default connection string on first use, then caches it. */
export declare function getDefaultUri(): string;
/** Database used when the connection string does not name one. */
export declare const DEFAULT_DB_NAME = "remote_logs";
/**
 * Collection that receives log documents. Deliberately NOT "logs" so it will
 * not collide with a collection a target database may already use.
 */
export declare const DEFAULT_COLLECTION = "log_entries";
export interface MongoTransportOptions {
    /** Connection string. Defaults to {@link DEFAULT_URI}. */
    uri?: string;
    /** Database name. Defaults to the URI's database, else {@link DEFAULT_DB_NAME}. */
    dbName?: string;
    /** Collection name. Defaults to {@link DEFAULT_COLLECTION}. */
    collectionName?: string;
    /** Pre-built client, mainly for tests. When given, the transport will not close it. */
    client?: MongoClient;
}
export declare function mongoTransport(options?: MongoTransportOptions): Transport;
