@ydbjs/core
Version: 
Core driver for YDB: manages connections, endpoint discovery, authentication, and service client creation. Foundation for all YDB client operations.
35 lines • 1.35 kB
TypeScript
import * as tls from 'node:tls';
import type { CredentialsProvider } from '@ydbjs/auth';
import { type ChannelOptions, type Client, type CompatServiceDefinition } from 'nice-grpc';
export type DriverOptions = {
    /**
     * SSL/TLS options for secure connections.
     *
     * @deprecated Use `secureOptions` instead.
     */
    ssl?: tls.SecureContextOptions;
    secureOptions?: tls.SecureContextOptions | undefined;
    channelOptions?: ChannelOptions;
    credentialsProvider?: CredentialsProvider;
    'ydb.sdk.application'?: string;
    'ydb.sdk.ready_timeout_ms'?: number;
    'ydb.sdk.token_timeout_ms'?: number;
    'ydb.sdk.enable_discovery'?: boolean;
    'ydb.sdk.discovery_timeout_ms'?: number;
    'ydb.sdk.discovery_interval_ms'?: number;
};
export declare class Driver implements Disposable {
    #private;
    readonly cs: URL;
    readonly options: DriverOptions;
    constructor(connectionString: string, options?: Readonly<DriverOptions>);
    get token(): Promise<string>;
    get database(): string;
    get isSecure(): boolean;
    ready(signal?: AbortSignal): Promise<void>;
    close(): void;
    createClient<Service extends CompatServiceDefinition>(service: Service, preferNodeId?: bigint): Client<Service>;
    [Symbol.dispose](): void;
    [Symbol.asyncDispose](): PromiseLike<void>;
}
//# sourceMappingURL=driver.d.ts.map