@bradsearch/search-sdk
Version:
TypeScript SDK for BradSearch API with JWT authentication, field mapping, and faceted search capabilities
55 lines • 1.63 kB
TypeScript
import { ApiSdkConfig, SearchResponse, QueryOptions, Filters, Item } from "../types";
export declare class ApiClient {
config: ApiSdkConfig;
private baseUrl;
constructor(config: ApiSdkConfig);
/**
* Get current configuration
*/
getConfig(): ApiSdkConfig;
/**
* Validate SDK configuration
*/
private validateConfig;
/**
* Perform search query
* @param query Search query string
* @param filters Optional filters
* @param options Optional query options
* @returns Promise with search response
*/
query<T = Item>(query?: string, filters?: Filters, options?: QueryOptions): Promise<SearchResponse<T>>;
/**
* Perform search query
* @param query Search query string
* @param filters Optional filters
* @param options Optional query options
* @returns Promise with search response
*/
autocomplete<T = Item>(query?: string, filters?: Filters, options?: QueryOptions): Promise<SearchResponse<T>>;
/**
* Build query parameters for API request
*/
private buildQueryParams;
/**
* Make HTTP request to API
*/
private makeRequest;
/**
* Process API response and transform items
*/
private processResponse;
/**
* Handle and convert errors to appropriate types
*/
private handleError;
/**
* Get filterable fields from configuration
*/
getFilterableFields(): string[];
/**
* Update configuration (useful for token refresh)
*/
updateConfig(updates: Partial<ApiSdkConfig>): void;
}
//# sourceMappingURL=ApiClient.d.ts.map