Files
elasticsearch/ts/index.ts

175 lines
3.5 KiB
TypeScript
Raw Permalink Normal View History

/**
* Enterprise-Grade Elasticsearch Client
*
* @packageDocumentation
*/
// Core infrastructure
export * from './core/index.js';
// Domain APIs
export * from './domain/documents/index.js';
export * from './domain/query/index.js';
export * from './domain/logging/index.js';
export * from './domain/bulk/index.js';
export * from './domain/kv/index.js';
export * from './domain/transactions/index.js';
// Re-export commonly used items for convenience
export {
// Configuration
createConfig,
type ElasticsearchConfig,
type AuthConfig,
// Connection
ElasticsearchConnectionManager,
type HealthStatus,
type HealthCheckResult,
// Errors
ElasticsearchError,
ConnectionError,
TimeoutError,
IndexNotFoundError,
DocumentNotFoundError,
DocumentConflictError,
BulkOperationError,
type ErrorCode,
// Observability
Logger,
LogLevel,
defaultLogger,
MetricsCollector,
defaultMetricsCollector,
TracingProvider,
defaultTracingProvider,
// Retry
RetryPolicy,
type RetryConfig,
// Plugins
PluginManager,
createPluginManager,
createLoggingPlugin,
createMetricsPlugin,
createCachePlugin,
createRetryPlugin,
createRateLimitPlugin,
type Plugin,
type PluginFactory,
type PluginContext,
type PluginResponse,
type PluginErrorContext,
type PluginStats,
type PluginManagerConfig,
type RetryPluginConfig,
type CachePluginConfig,
type LoggingPluginConfig,
type MetricsPluginConfig,
type RateLimitPluginConfig,
} from './core/index.js';
export {
// Documents
DocumentManager,
type DocumentWithMeta,
type SessionConfig,
type SnapshotMeta,
} from './domain/documents/index.js';
export {
// Query
QueryBuilder,
createQuery,
AggregationBuilder,
createAggregationBuilder,
type QueryDSL,
type SearchResult,
type SearchOptions,
type AggregationDSL,
} from './domain/query/index.js';
export {
// Logging
LogDestination,
createLogDestination,
addHostInfo,
addEnvironment,
addServiceInfo,
addProcessInfo,
addTimestamp,
sanitizeSensitiveData,
addDynamicTags,
chainEnrichers,
type LogEntry,
type LogEnricher,
type SamplingStrategy,
type SamplingConfig,
type ILMPolicyConfig,
type LogDestinationConfig,
type LogBatchResult,
type LogDestinationStats,
} from './domain/logging/index.js';
export {
// Bulk
BulkIndexer,
createBulkIndexer,
type BulkOperationType,
type BulkOperation,
type BulkOperationResult,
type BulkBatchResult,
type BulkProgressCallback,
type BulkProgress,
type BatchingStrategy,
type BulkIndexerConfig,
type BulkIndexerStats,
type BackpressureState,
} from './domain/bulk/index.js';
export {
// KV Store
KVStore,
createKVStore,
type KVOperationResult,
type KVSetOptions,
type KVGetOptions,
type KVDeleteOptions,
type KVScanOptions,
type KVScanResult,
type CacheEvictionPolicy,
type CacheStats,
type KVStoreConfig,
type KVStoreStats,
type KVDocument,
type CacheEntry,
type KVBatchGetResult,
type KVBatchSetResult,
type KVBatchDeleteResult,
} from './domain/kv/index.js';
export {
// Transactions
TransactionManager,
Transaction,
createTransactionManager,
type TransactionIsolationLevel,
type TransactionState,
type LockingStrategy,
type TransactionOperationType,
type TransactionOperation,
type TransactionConfig,
type TransactionContext,
type TransactionResult,
type TransactionStats,
type LockInfo,
type ConflictResolutionStrategy,
type ConflictInfo,
type TransactionManagerConfig,
type Savepoint,
type TransactionCallbacks,
} from './domain/transactions/index.js';