@warriorteam/redai-api-sdk
Version:
TypeScript SDK for RedAI Backend API
81 lines (78 loc) • 3.81 kB
TypeScript
import { D as DashboardGenericModule, H as HttpClientConfig } from './index-BAdN7NsW.js';
export { ai as AiPageGeneratorService, r as ApiConfigResponse, A as ApiResponse, af as ApiService, t as ApiStatisticsResponse, d as ApiStatus, K as AssociateApisRequest, n as AuthConfig, i as AuthType, C as CacheConfig, X as ChartAggregate, Y as ChartColumn, V as ChartFilter, Z as ChartFunnelStep, W as ChartGroupBy, _ as ChartMetric, $ as ChartMetricGroup, p as CreateApiRequest, M as CreateFromTemplateRequest, E as CreatePageTemplateRequest, N as CreateTemplateWithDataRequest, B as CustomToolRef, h as DashboardChartType, g as DashboardModule, s as DashboardModuleItem, x as Dependencies, a1 as ExecuteApiItem, a2 as ExecuteApiRequest, a4 as ExecuteApiResponse, a3 as ExecuteApiResultItem, ah as ExecuteApiService, a6 as ExecuteResourceRequest, a8 as ExecuteResourceResponse, aa as GeneratePageFromAiRequest, ad as GeneratePageFromAiResponse, ae as GeneratePageHtmlFromAiResponse, a9 as GenerationPattern, a0 as GenericChartConfig, a as HttpClient, b as HttpMethod, I as I18nLabel, u as LayoutConfig, L as LayoutType, w as PageConfig, O as PageTemplateResponse, ag as PageTemplateService, e as PageTemplateStatus, f as PageTemplateType, P as PaginatedResult, z as PreviewData, q as QueryApiRequest, G as QueryPageTemplateRequest, Q as QueryParams, j as RESOURCE_PREFIX, m as RateLimitConfig, J as RenamePageTemplateRequest, a5 as ResourceExecutionItem, a7 as ResourceExecutionResult, k as ResourcePrefix, R as ResourceType, o as RetryConfig, ac as SavedTemplateInfo, l as Schema, v as SeoMeta, S as SortDirection, T as TemplateData, U as UpdateApiRequest, F as UpdatePageTemplateRequest, y as UsageStats, ab as ValidationError, c as createDashboardGenericModule } from './index-BAdN7NsW.js';
import 'axios';
/**
* RedAI API SDK Client
*
* Main entry point for the SDK. Provides access to all modules.
*
* @example
* ```typescript
* import { RedAiSdk } from '@redai/api-sdk';
*
* const sdk = new RedAiSdk({
* baseUrl: 'https://api.example.com',
* });
*
* // Set authentication
* sdk.setAuthToken('your-jwt-token');
*
* // Access dashboard-generic module
* const apis = await sdk.dashboardGeneric.api.findAll();
* const templates = await sdk.dashboardGeneric.pageTemplate.findAll();
*
* // Execute APIs
* const result = await sdk.dashboardGeneric.execute.execute({
* apis: [
* { module: 'BUSINESS', code: 'BUSINESS_REVENUE_OVERVIEW', type: 'overview', begin: 1704067200000, end: 1735689600000 }
* ]
* });
*
* // Generate page with AI
* const generated = await sdk.dashboardGeneric.aiPageGenerator.generate({
* apiIds: ['123e4567-e89b-12d3-a456-426614174000'],
* prompt: 'Create a revenue dashboard with charts',
* isSave: 'FALSE',
* });
* ```
*/
declare class RedAiSdk {
private readonly httpClient;
/** Dashboard Generic Module */
readonly dashboardGeneric: DashboardGenericModule;
constructor(config: HttpClientConfig);
/**
* Set authentication token for all API requests
*
* @param token - JWT token
*/
setAuthToken(token: string): void;
/**
* Clear authentication token
*/
clearAuthToken(): void;
/**
* Get current authentication token
*/
getAuthToken(): string | null;
}
/**
* Create RedAI SDK instance
*
* @param config - SDK configuration
* @returns RedAiSdk instance
*
* @example
* ```typescript
* import { createRedAiSdk } from '@redai/api-sdk';
*
* const sdk = createRedAiSdk({
* baseUrl: 'https://api.example.com',
* timeout: 30000,
* });
*
* sdk.setAuthToken('your-jwt-token');
* ```
*/
declare function createRedAiSdk(config: HttpClientConfig): RedAiSdk;
export { DashboardGenericModule, HttpClientConfig, RedAiSdk, createRedAiSdk, RedAiSdk as default };