@gftdcojp/gftd-orm
Version:
Enterprise-grade real-time data platform with ksqlDB, inspired by Supabase architecture
108 lines • 2.69 kB
TypeScript
/**
* GFTD ORM - Enterprise-grade real-time data platform
* Inspired by Supabase architecture with ksqlDB backend
*/
export * from './types';
export * from './realtime';
export { validateConfig, initializeConfig, getCoreConfig, getDatabaseConfig, getRealtimeConfig } from './config';
export * from './rate-limit';
export * from './browser-client';
export * from './supabase-like-client';
interface KsqlDbConfig {
url: string;
apiKey?: string;
}
interface SchemaRegistryConfig {
url: string;
apiKey?: string;
}
/**
* Realtime configuration
*/
interface RealtimeConfig {
url: string;
apiKey?: string;
autoReconnect?: boolean;
reconnectInterval?: number;
maxReconnectAttempts?: number;
}
/**
* GFTD ORM 統合設定
*/
export interface GftdOrmConfig {
url: string;
key?: string;
database: {
ksql: KsqlDbConfig;
schemaRegistry: SchemaRegistryConfig;
};
realtime?: RealtimeConfig;
global?: {
headers?: Record<string, string>;
schema?: string;
};
}
/**
* 統合クライアント
*/
export declare class GftdOrmClient {
private config;
private realtimeClient;
private initialized;
constructor(config: GftdOrmConfig);
/**
* クライアント初期化
*/
initialize(): Promise<void>;
/**
* ヘルスチェック
*/
health(): Promise<{
status: string;
version: string;
features: string[];
connections: {
ksqldb: string;
schemaRegistry: string;
realtime: string;
};
}>;
/**
* リアルタイムチャンネルを取得
*/
channel(topic: string): import("./realtime").RealtimeChannel;
/**
* 接続状態を確認
*/
isConnected(): boolean;
/**
* クライアントを閉じる
*/
disconnect(): void;
}
/**
* 統合クライアント作成関数
*/
export declare function createClient(config: GftdOrmConfig): GftdOrmClient;
export { RateLimitManager } from './rate-limit';
/**
* 設定の初期化と検証
*/
export declare function init(): void;
/**
* ヘルスチェック(スタンドアロン)
*/
export declare function healthCheck(): Promise<{
status: string;
version: string;
config: {
core: boolean;
database: boolean;
realtime: boolean;
};
}>;
export * from './translator-client';
export { translator } from './translator-client';
export * from './hooks';
export { UnifiedAuthManager, getUnifiedAuthManager, UnifiedAuthPresets, unifiedAuthRedirectMiddleware, type UnifiedAuthConfig, } from './unified-auth-config';
//# sourceMappingURL=index.d.ts.map