@codai/cbd
Version:
Codai Better Database - High-Performance Vector Memory System with HPKV-inspired architecture and MCP server
155 lines • 4.89 kB
TypeScript
import { EventEmitter } from 'events';
import { z } from 'zod';
declare const CloudConfigSchema: z.ZodObject<{
provider: z.ZodEnum<["aws", "azure", "gcp"]>;
region: z.ZodString;
credentials: z.ZodObject<{
accessKey: z.ZodOptional<z.ZodString>;
secretKey: z.ZodOptional<z.ZodString>;
tenantId: z.ZodOptional<z.ZodString>;
clientId: z.ZodOptional<z.ZodString>;
clientSecret: z.ZodOptional<z.ZodString>;
projectId: z.ZodOptional<z.ZodString>;
keyFile: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
tenantId?: string | undefined;
clientId?: string | undefined;
clientSecret?: string | undefined;
projectId?: string | undefined;
keyFile?: string | undefined;
accessKey?: string | undefined;
secretKey?: string | undefined;
}, {
tenantId?: string | undefined;
clientId?: string | undefined;
clientSecret?: string | undefined;
projectId?: string | undefined;
keyFile?: string | undefined;
accessKey?: string | undefined;
secretKey?: string | undefined;
}>;
services: z.ZodObject<{
database: z.ZodOptional<z.ZodString>;
storage: z.ZodOptional<z.ZodString>;
compute: z.ZodOptional<z.ZodString>;
ai: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
database?: string | undefined;
storage?: string | undefined;
compute?: string | undefined;
ai?: string | undefined;
}, {
database?: string | undefined;
storage?: string | undefined;
compute?: string | undefined;
ai?: string | undefined;
}>;
priority: z.ZodNumber;
healthCheck: z.ZodObject<{
endpoint: z.ZodString;
timeout: z.ZodDefault<z.ZodNumber>;
retries: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
timeout: number;
endpoint: string;
retries: number;
}, {
endpoint: string;
timeout?: number | undefined;
retries?: number | undefined;
}>;
}, "strip", z.ZodTypeAny, {
region: string;
provider: "aws" | "azure" | "gcp";
credentials: {
tenantId?: string | undefined;
clientId?: string | undefined;
clientSecret?: string | undefined;
projectId?: string | undefined;
keyFile?: string | undefined;
accessKey?: string | undefined;
secretKey?: string | undefined;
};
services: {
database?: string | undefined;
storage?: string | undefined;
compute?: string | undefined;
ai?: string | undefined;
};
priority: number;
healthCheck: {
timeout: number;
endpoint: string;
retries: number;
};
}, {
region: string;
provider: "aws" | "azure" | "gcp";
credentials: {
tenantId?: string | undefined;
clientId?: string | undefined;
clientSecret?: string | undefined;
projectId?: string | undefined;
keyFile?: string | undefined;
accessKey?: string | undefined;
secretKey?: string | undefined;
};
services: {
database?: string | undefined;
storage?: string | undefined;
compute?: string | undefined;
ai?: string | undefined;
};
priority: number;
healthCheck: {
endpoint: string;
timeout?: number | undefined;
retries?: number | undefined;
};
}>;
export type CloudConfig = z.infer<typeof CloudConfigSchema>;
export interface CloudMetrics {
latency: number;
availability: number;
cost: number;
performance: number;
reliability: number;
lastUpdated: Date;
}
export declare class MultiCloudIntelligenceEngine extends EventEmitter {
private cloudConfigs;
private cloudMetrics;
private activeConnections;
private selectionCache;
constructor();
private initializeCloudProviders;
selectOptimalCloud(operation: string, requirements?: {
latency?: number;
cost?: number;
compliance?: string[];
dataLocation?: string;
performance?: number;
}): Promise<string>;
distributeLoad(operations: Array<{
operation: string;
data: any;
requirements?: any;
}>): Promise<Map<string, any[]>>;
private startMetricsCollection;
private collectCloudMetrics;
private validateCloudConfigurations;
getCloudStatus(): Array<{
cloud: string;
config: CloudConfig;
metrics?: CloudMetrics;
status: 'active' | 'degraded' | 'offline';
}>;
getRecommendations(operation: string): Array<{
cloud: string;
score: number;
reasoning: string[];
}>;
}
export declare const multiCloudEngine: MultiCloudIntelligenceEngine;
export {};
//# sourceMappingURL=MultiCloudIntelligenceEngine.d.ts.map