@neureus/sdk
Version:
Neureus Platform SDK - AI-native, edge-first application platform
120 lines (116 loc) • 4.03 kB
TypeScript
import { RAGClient } from './rag.js';
export { IngestOptions, QueryOptions, RAGClientConfig, createRAGClient } from './rag.js';
import { VectorClient } from './vector.js';
export { HybridSearchOptions, SearchOptions, UpsertOptions, VectorClientConfig, createVectorClient } from './vector.js';
import { AIClient } from './ai.js';
export { AIClientConfig, ChatCompletionOptions, createAIClient } from './ai.js';
export { AIGatewayError, AIProvider, AuthenticationError, CacheConfig, ChatCompletionRequest, ChatCompletionResponse, ChatCompletionStreamChunk, ChatMessage, ModelConfig, ProviderCapabilities, ProviderConfig, ProviderError, RateLimitError, RoutingStrategy } from '@neureus/ai-gateway';
export { DimensionMismatchError, HybridSearch, IndexNotFoundError, IndexType, SimilarityMetric, Vector, VectorDBError, VectorEntry, VectorId, VectorIndexConfig, VectorIndexStats, VectorNotFoundError, VectorSearch, VectorSearchResponse, VectorSearchResult } from '@neureus/vector-db';
export { BatchProcessingResult, Chunk, ChunkMetadata, ChunkingConfig, ChunkingStrategy, ContextResult, Document, DocumentFormat, DocumentMetadata, DocumentProcessingError, DocumentSource, EmbeddingConfig, EmbeddingError, GenerationError, IngestionRequest, ProcessingResult, QueryRequest, QueryResponse, QueryStreamChunk, RAGConfig, RAGError, RAGPipelineInfo, RAGPipelineStatus, RetrievalError } from '@neureus/rag';
interface NeureusClientConfig {
/**
* Neureus API key (required)
* Get your API key from https://app.neureus.ai/settings/api-keys
*/
apiKey: string;
/**
* Base URL for the Neureus API
* @default 'https://api.neureus.ai'
*/
baseUrl?: string;
/**
* Request timeout in milliseconds
* @default 60000 (60 seconds)
*/
timeout?: number;
/**
* Number of retry attempts for failed requests
* @default 3
*/
retries?: number;
/**
* User ID for usage tracking (optional)
*/
userId?: string;
/**
* Team ID for usage tracking (optional)
*/
teamId?: string;
/**
* Default vector index name
* @default 'default'
*/
defaultVectorIndex?: string;
/**
* Default vector namespace
*/
defaultVectorNamespace?: string;
}
/**
* Unified Neureus Platform Client
*
* Provides access to all Neureus AI Platform services through a single
* unified interface: AI Gateway, Vector Database, and RAG Pipeline.
*
* @example
* ```typescript
* import { NeureusClient } from '@neureus/sdk';
*
* const neureus = new NeureusClient({
* apiKey: 'nru_...',
* baseUrl: 'https://api.neureus.ai'
* });
*
* // Use AI Gateway
* const response = await neureus.ai.chat.create([
* { role: 'user', content: 'What is Neureus?' }
* ]);
*
* // Use Vector Database
* await neureus.vector.upsert({
* vectors: [{ id: '1', vector: [...], metadata: {} }]
* });
*
* // Use RAG Pipeline
* const answer = await neureus.rag.query('knowledge-base', {
* query: 'How do I deploy?'
* });
* ```
*/
declare class NeureusClient {
/**
* AI Gateway client for LLM interactions
*/
readonly ai: AIClient;
/**
* Vector Database client for vector operations
*/
readonly vector: VectorClient;
/**
* RAG Pipeline client for document Q&A
*/
readonly rag: RAGClient;
/**
* Configuration used to create this client
*/
readonly config: Required<NeureusClientConfig>;
constructor(config: NeureusClientConfig);
}
/**
* Create a Neureus client instance
*
* @example
* ```typescript
* import { createNeureusClient } from '@neureus/sdk';
*
* const neureus = createNeureusClient({
* apiKey: process.env.NEUREUS_API_KEY
* });
* ```
*/
declare function createNeureusClient(config: NeureusClientConfig): NeureusClient;
/**
* Package version
*/
declare const VERSION = "0.2.0";
export { AIClient, NeureusClient, type NeureusClientConfig, RAGClient, VERSION, VectorClient, createNeureusClient, NeureusClient as default };