dataweave
Version:
AI-assisted CLI for modern data pipelines with DBT, Dagster, and Supabase integration
52 lines • 1.62 kB
TypeScript
export interface AIProvider {
generate(prompt: string, context?: any): Promise<string>;
explain(code: string, codeType: 'sql' | 'python'): Promise<string>;
optimize(code: string, codeType: 'sql' | 'python'): Promise<string>;
}
export interface AIConfig {
provider: 'openai' | 'anthropic' | 'local';
apiKey?: string;
model?: string;
temperature?: number;
maxTokens?: number;
}
export interface GenerationContext {
tables?: TableSchema[];
existingModels?: string[];
projectName?: string;
dbType?: string;
}
export interface TableSchema {
name: string;
columns: ColumnSchema[];
}
export interface ColumnSchema {
name: string;
type: string;
nullable?: boolean;
primaryKey?: boolean;
foreignKey?: string;
}
export declare class AIEngine {
private provider;
private config;
constructor(config: AIConfig);
generateDbtModel(prompt: string, context?: GenerationContext): Promise<{
sql: string;
description: string;
}>;
generateDagsterAsset(prompt: string, context?: GenerationContext): Promise<{
code: string;
description: string;
}>;
explainCode(code: string, codeType: 'sql' | 'python'): Promise<string>;
optimizeCode(code: string, codeType: 'sql' | 'python'): Promise<string>;
generateDocumentation(modelName: string, sql: string): Promise<string>;
private createProvider;
private buildDbtSystemPrompt;
private buildDagsterSystemPrompt;
private formatTableSchema;
private parseDbtResponse;
private parseDagsterResponse;
}
//# sourceMappingURL=index.d.ts.map