UNPKG

dsl-builder

Version:

OpenSearch Query Builder - Extract from OpenSearch Dashboards

50 lines (49 loc) 1.59 kB
import { SavedObjectAttributes } from "./saved_objects"; export interface DataSourceAttributes extends SavedObjectAttributes { title: string; description?: string; endpoint: string; dataSourceVersion: string; dataSourceEngineType?: DataSourceEngineType; installedPlugins?: string[]; auth: { type: AuthType | string; credentials: UsernamePasswordTypedContent | SigV4Content | undefined | AuthTypeContent; }; lastUpdatedTime?: string; } export interface AuthTypeContent { [key: string]: string; } /** * Multiple datasource supports authenticating as IAM user, it doesn't support IAM role. * Because IAM role session requires temporary security credentials through assuming role, * which makes no sense to store the credentials. */ export interface SigV4Content extends SavedObjectAttributes { accessKey: string; secretKey: string; region: string; service?: SigV4ServiceName; sessionToken?: string; } export interface UsernamePasswordTypedContent extends SavedObjectAttributes { username: string; password: string; } export declare enum AuthType { NoAuth = "no_auth", UsernamePasswordType = "username_password", SigV4 = "sigv4" } export declare enum SigV4ServiceName { OpenSearch = "es", OpenSearchServerless = "aoss" } export declare enum DataSourceEngineType { OpenSearch = "OpenSearch", OpenSearchServerless = "OpenSearch Serverless", Elasticsearch = "Elasticsearch", NA = "No Engine Type Available", OpenSearchCrossCluster = "OpenSearch(Cross-cluster search)" }