UNPKG

@kaaiot/services

Version:

Type definitions for KaaIoT platform REST API service communication

47 lines (46 loc) 1.7 kB
import { FetchResponse } from "../service-requester"; export declare type AnalyticsQuery = Record<string, any>; export declare type AnalyticsFieldType = 'float' | 'long' | 'boolean' | 'text' | 'keyword' | 'date' | 'object'; export interface MappingFieldInfo { type: AnalyticsFieldType; fields?: { keyword: { type: 'keyword'; ignore_above: number; }; }; } declare type MappingField = Record<string, MappingFieldInfo & Mapping>; export interface Mapping { properties?: Record<string, MappingField>; } export interface AnalyticsMapping { mappings: Mapping | MappingField; } export declare type AnalyticsMappingsResponse = Record<string, AnalyticsMapping>; export interface AnalyticsClientProvider { search(index: string, query: AnalyticsQuery): Promise<FetchResponse<any>>; msearch(query: MultiSearchQuery[]): Promise<FetchResponse<any>>; msearchCombined(query: MultiSearchQuery[]): Promise<FetchResponse<any>>; } export interface SearchRequestOptions { index: string; body: Record<string, any>; interval: number; } export declare type SearchSubscribeCallbackSuccess = (data: FetchResponse<any>) => void; export declare type SearchSubscribeCallbackError = (data: FetchResponse<any>) => void; export interface SubscribeSearchOptions { requestOptions: SearchRequestOptions; callback: (data: FetchResponse<any>) => void; errorCallback: (error: any) => void; } export declare type MultiSearchHeader = Record<string, any> & { index: string; }; export declare type MultiSearchBody = Record<string, any>; export interface MultiSearchQuery { header: MultiSearchHeader; body: MultiSearchBody; } export {};