UNPKG

@gftdcojp/ksqldb-orm

Version:

ksqldb-orm - Server-Side TypeScript ORM for ksqlDB with enterprise security extensions

155 lines 4.3 kB
/** * クライアントサイド用HTTPクライアント(ブラウザ環境) */ import { KsqlDbConfig } from './types'; import { PullQueryOptions } from './ksqldb-client'; export interface ClientConfig { url: string; apiKey?: string; apiSecret?: string; headers?: Record<string, string>; timeout?: number; enforceHttps?: boolean; } /** * ブラウザ環境用HTTPクライアント */ export declare class HttpClient { private config; private defaultHeaders; constructor(config: ClientConfig); /** * GET リクエストを送信 */ get(path: string, params?: Record<string, any>): Promise<any>; /** * POST リクエストを送信 */ post(path: string, data?: any): Promise<any>; /** * PUT リクエストを送信 */ put(path: string, data?: any): Promise<any>; /** * DELETE リクエストを送信 */ delete(path: string): Promise<any>; /** * ksqlDB クエリを実行 */ executeQuery(sql: string): Promise<any>; /** * Pull Query を実行(ブラウザ用) * @param sql - 実行するSQL文 * @param options - Pull Queryのオプション */ executePullQuery(sql: string, options?: PullQueryOptions): Promise<any>; private fetch; private handleResponse; } /** * ブラウザ環境用ksqlDBクライアント */ export declare class KsqlDbClientBrowser { private httpClient; private config; constructor(config: KsqlDbConfig); /** * クエリを実行 */ executeQuery(sql: string): Promise<any>; /** * Pull Query を実行 * @param sql - 実行するSQL文 * @param options - Pull Queryのオプション(デフォルトでオブジェクト形式を返す) */ executePullQuery(sql: string, options?: PullQueryOptions): Promise<any>; /** * DDL文を実行 */ executeDDL(ddl: string): Promise<any>; /** * ストリーム/テーブル一覧を取得 */ listStreams(): Promise<any>; listTables(): Promise<any>; /** * トピック一覧を取得 */ listTopics(): Promise<any>; /** * スキーマ情報を取得 */ describeStream(streamName: string): Promise<any>; describeTable(tableName: string): Promise<any>; /** * 接続状態を確認 */ isConnected(): Promise<boolean>; /** * クライアント設定を取得 */ getConfig(): KsqlDbConfig; } /** * ブラウザ環境用ksqlDBクライアントを作成 */ export declare function createKsqlDbClientBrowser(config: KsqlDbConfig): KsqlDbClientBrowser; /** * サーバー環境用ksqlDBクライアント */ export declare class KsqlDbClientServer { private config; constructor(config: KsqlDbConfig); /** * クエリを実行 */ executeQuery(sql: string): Promise<any>; /** * Pull Query を実行 * @param sql - 実行するSQL文 * @param options - Pull Queryのオプション(デフォルトでオブジェクト形式を返す) */ executePullQuery(sql: string, options?: PullQueryOptions): Promise<any>; /** * Push Query を実行 */ executePushQuery(sql: string, onData: (data: any) => void, onError?: (error: Error) => void, onComplete?: () => void): Promise<{ terminate: () => void; }>; /** * DDL文を実行 */ executeDDL(ddl: string): Promise<any>; /** * ストリーム/テーブル一覧を取得 */ listStreams(): Promise<any>; listTables(): Promise<any>; /** * トピック一覧を取得 */ listTopics(): Promise<any>; /** * スキーマ情報を取得 */ describeStream(streamName: string): Promise<any>; describeTable(tableName: string): Promise<any>; /** * 接続状態を確認 */ isConnected(): Promise<boolean>; /** * クライアント設定を取得 */ getConfig(): KsqlDbConfig; /** * クライアントを初期化 */ initialize(): Promise<void>; } /** * サーバー環境用ksqlDBクライアントを作成 */ export declare function createKsqlDbClientServer(config: KsqlDbConfig): KsqlDbClientServer; //# sourceMappingURL=http-client.d.ts.map