@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.38 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;
protected readonly cs: URL;
protected 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