arangojs
Version:
The official ArangoDB JavaScript driver.
64 lines • 1.9 kB
TypeScript
import { ArangojsResponse } from "./util/request";
export declare type LoadBalancingStrategy = "NONE" | "ROUND_ROBIN" | "ONE_RANDOM";
export declare type RequestOptions = {
host?: number;
method?: string;
body?: any;
expectBinary?: boolean;
isBinary?: boolean;
isJsonStream?: boolean;
headers?: {
[key: string]: string;
};
absolutePath?: boolean;
basePath?: string;
path?: string;
qs?: string | {
[key: string]: any;
};
};
export declare type Config = string | string[] | Partial<{
url: string | string[];
isAbsolute: boolean;
arangoVersion: number;
loadBalancingStrategy: LoadBalancingStrategy;
maxRetries: false | number;
agent: any;
agentOptions: {
[key: string]: any;
};
headers: {
[key: string]: string;
};
}>;
export declare class Connection {
private _activeTasks;
private _agent?;
private _agentOptions;
private _arangoVersion;
private _databaseName;
private _headers;
private _loadBalancingStrategy;
private _useFailOver;
private _shouldRetry;
private _maxRetries;
private _maxTasks;
private _queue;
private _hosts;
private _urls;
private _activeHost;
constructor(config?: Config);
private readonly _databasePath;
private _runQueue;
private _buildUrl;
private _sanitizeEndpointUrl;
addToHostList(urls: string | string[]): number[];
readonly arangoMajor: number;
getDatabaseName(): string | false;
getActiveHost(): number;
setDatabaseName(databaseName: string): void;
setHeader(key: string, value: string): void;
close(): void;
request<T = ArangojsResponse>({ host, method, body, expectBinary, isBinary, isJsonStream, headers, ...urlInfo }: RequestOptions, getter?: (res: ArangojsResponse) => T): Promise<T>;
}
//# sourceMappingURL=connection.d.ts.map