UNPKG

@gftdcojp/gftd-orm

Version:

Enterprise-grade real-time data platform with ksqlDB, inspired by Supabase architecture

78 lines 2.73 kB
/** * ksqlDB コネクション - REST API 経由でクエリを実行、DDL/DML を発行 */ import { KsqlDbConfig } from './types'; /** * ksqlDB クライアントを初期化 */ export declare function initializeKsqlDbClient(ksqlConfig: KsqlDbConfig): void; /** * 配列レスポンスをオブジェクトに変換する関数 * @param rows - データ行の配列 * @param columnNames - カラム名の配列 * @returns オブジェクトの配列 */ export declare function transformArrayRowsToObjects(rows: any[][], columnNames: string[]): Record<string, any>[]; /** * オプション型 - Pull Queryの結果形式を指定 */ export interface PullQueryOptions { /** レスポンス形式: 'object' (デフォルト) | 'array' */ format?: 'object' | 'array'; /** テーブル名の正規化を行うかどうか */ normalizeTableName?: boolean; } /** * DDL/DML文を実行(CREATE, INSERT, UPDATE, DELETE, DROP など) * /ksql エンドポイントを使用 */ export declare function executeQuery(sql: string): Promise<any>; /** * Pull Query を実行(一度だけ結果を取得するSELECT文) * /query-stream エンドポイントを使用 * @param sql - 実行するSQL文 * @param options - Pull Queryのオプション */ export declare function executePullQuery(sql: string, options?: PullQueryOptions): Promise<any>; /** * Push Query を実行(継続的にデータを受信するSELECT文) * /query-stream エンドポイントでストリーミング */ export declare function executePushQuery(sql: string, onData: (data: any) => void, onError?: (error: Error) => void, onComplete?: () => void): Promise<{ terminate: () => void; }>; /** * 汎用クエリ実行(自動でエンドポイントを選択) */ export declare function executeAnyQuery(sql: string): Promise<any>; /** * DDL文を実行(CREATE STREAM/TABLE など) */ export declare function executeDDL(ddl: string): Promise<any>; /** * ストリーム/テーブル一覧を取得 */ export declare function listStreams(): Promise<any>; export declare function listTables(): Promise<any>; /** * トピック一覧を取得 */ export declare function listTopics(): Promise<any>; /** * スキーマ情報を取得 */ export declare function describeStream(streamName: string): Promise<any>; export declare function describeTable(tableName: string): Promise<any>; /** * クライアント設定を取得 */ export declare function getClientConfig(): KsqlDbConfig | null; /** * 接続状態を確認 */ export declare function isConnected(): boolean; /** * クライアントを閉じる */ export declare function closeClient(): void; //# sourceMappingURL=ksqldb-client.d.ts.map