import { Options } from "typedb-protocol/proto/options";
/** Interface for TypeDBOptions. Use {@link TypeDBOptions} instead. */
export interface Opts {
/** If set to True, enables inference for queries. Only settable at transaction level and above. Only affects read transactions.*/
infer?: boolean;
/** If set to True, reasoning tracing graphs are output in the logging directory. Should be used with parallel = False.*/
traceInference?: boolean;
/** If set to True, enables explanations for queries. Only affects read transactions.*/
explain?: boolean;
/** If set to True, the server uses parallel instead of single-threaded execution.*/
parallel?: boolean;
/** If set, specifies a guideline number of answers that the server should send before the driver issues a fresh request. */
prefetchSize?: number;
/** If set to True, the first batch of answers is streamed to the driver even without an explicit request for it. */
prefetch?: boolean;
/** If set, specifies a timeout that allows the server to close sessions if the driver terminates or becomes unresponsive. */
sessionIdleTimeoutMillis?: number;
/** If set, specifies a timeout for killing transactions automatically, preventing memory leaks in unclosed transactions. */
transactionTimeoutMillis?: number;
/** If set, specifies how long the driver should wait if opening a session or transaction is blocked by a schema write lock. */
schemaLockAcquireTimeoutMillis?: number;
/** If set to True, enables reading data from any replica, potentially boosting read throughput. Only settable in TypeDB Cloud. */
readAnyReplica?: boolean;
}
/**
* TypeDB session and transaction options. TypeDBOptions object can be used to override the default server behaviour.
* Options could be specified either as constructor arguments or using setters.
*
* ### Examples
*
* ```ts
* transactionOptions = new TypeDBOptions({"infer": true})
* transactionOptions.infer(true)
* ```
*/
export declare class TypeDBOptions implements Opts {
private _infer;
private _traceInference;
private _explain;
private _parallel;
private _prefetchSize;
private _prefetch;
private _sessionIdleTimeoutMillis;
private _transactionTimeoutMillis;
private _schemaLockAcquireTimeoutMillis;
private _readAnyReplica;
constructor(obj?: {
[K in keyof Opts]: Opts[K];
});
proto(): Options;
get infer(): boolean;
set infer(value: boolean);
get traceInference(): boolean;
set traceInference(value: boolean);
get explain(): boolean;
set explain(value: boolean);
get parallel(): boolean;
set parallel(value: boolean);
get prefetch(): boolean;
set prefetch(value: boolean);
get prefetchSize(): number;
set prefetchSize(value: number);
get sessionIdleTimeoutMillis(): number;
set sessionIdleTimeoutMillis(millis: number);
get transactionTimeoutMillis(): number;
set transactionTimeoutMillis(millis: number);
get schemaLockAcquireTimeoutMillis(): number;
set schemaLockAcquireTimeoutMillis(value: number);
get readAnyReplica(): boolean;
set readAnyReplica(value: boolean);
}