bifocal/node_modules/@elastic/elasticsearch/lib/client.d.ts

73 lines
2.6 KiB
TypeScript

/// <reference types="node" />
/// <reference types="node" />
import { ConnectionOptions as TlsConnectionOptions } from 'tls';
import { URL } from 'url';
import { Transport, Serializer, Diagnostic, BaseConnectionPool } from '@elastic/transport';
import { HttpAgentOptions, UndiciAgentOptions, agentFn, nodeFilterFn, nodeSelectorFn, generateRequestIdFn, BasicAuth, ApiKeyAuth, BearerAuth, Context } from '@elastic/transport/lib/types';
import { RedactionOptions } from '@elastic/transport/lib/Transport';
import BaseConnection from '@elastic/transport/lib/connection/BaseConnection';
import SniffingTransport from './sniffingTransport';
import Helpers from './helpers';
import API from './api';
export interface NodeOptions {
url: URL;
id?: string;
agent?: HttpAgentOptions | UndiciAgentOptions;
ssl?: TlsConnectionOptions;
headers?: Record<string, any>;
roles?: {
master: boolean;
data: boolean;
ingest: boolean;
ml: boolean;
};
}
export interface ClientOptions {
node?: string | string[] | NodeOptions | NodeOptions[];
nodes?: string | string[] | NodeOptions | NodeOptions[];
Connection?: typeof BaseConnection;
ConnectionPool?: typeof BaseConnectionPool;
Transport?: typeof Transport;
Serializer?: typeof Serializer;
maxRetries?: number;
requestTimeout?: number;
pingTimeout?: number;
sniffInterval?: number | boolean;
sniffOnStart?: boolean;
sniffEndpoint?: string;
sniffOnConnectionFault?: boolean;
resurrectStrategy?: 'ping' | 'optimistic' | 'none';
compression?: boolean;
tls?: TlsConnectionOptions;
agent?: HttpAgentOptions | UndiciAgentOptions | agentFn | false;
nodeFilter?: nodeFilterFn;
nodeSelector?: nodeSelectorFn;
headers?: Record<string, any>;
opaqueIdPrefix?: string;
generateRequestId?: generateRequestIdFn;
name?: string | symbol;
auth?: BasicAuth | ApiKeyAuth | BearerAuth;
context?: Context;
proxy?: string | URL;
enableMetaHeader?: boolean;
cloud?: {
id: string;
};
disablePrototypePoisoningProtection?: boolean | 'proto' | 'constructor';
caFingerprint?: string;
maxResponseSize?: number;
maxCompressedResponseSize?: number;
redaction?: RedactionOptions;
}
export default class Client extends API {
diagnostic: Diagnostic;
name: string | symbol;
connectionPool: BaseConnectionPool;
transport: SniffingTransport;
serializer: Serializer;
helpers: Helpers;
constructor(opts: ClientOptions);
child(opts: ClientOptions): Client;
close(): Promise<void>;
}