UNPKG

semantic-ds-toolkit

Version:

Performance-first semantic layer for modern data stacks - Stable Column Anchors & intelligent inference

57 lines 1.79 kB
export interface TemplateContext { tableName: string; viewName: string; columns: string[]; validationCases: string[]; metadata?: Record<string, any>; config?: Record<string, any>; } export interface CompiledTemplate { render: (context: TemplateContext) => string; cacheKey: string; } export declare class SQLTemplateEngine { private templateCache; private compilationStartTime; constructor(); compile(template: string, cacheKey?: string): CompiledTemplate; private compileTemplate; private resolveVariable; private generateCacheKey; private precompileCommonTemplates; getValidationViewTemplate(): string; getQuarantineTableTemplate(): string; getDbtModelTemplate(): string; getSnowflakeValidationTemplate(): string; getBigQueryValidationTemplate(): string; getDuckDBValidationTemplate(): string; getPostgresValidationTemplate(): string; clearCache(): void; getCacheStats(): { size: number; keys: string[]; hitRate?: number; }; } export interface ValidationCaseTemplate { generate(rule: any, target: string): string; } export declare class ValidationCaseGenerator implements ValidationCaseTemplate { generate(rule: any, target: string): string; private adaptConditionForTarget; } export declare class TemplatePerformanceMonitor { private renderTimes; private compilationTimes; recordRenderTime(time: number): void; recordCompilationTime(time: number): void; getAverageRenderTime(): number; getPerformanceReport(): { avgRenderTime: number; avgCompilationTime: number; totalRenders: number; totalCompilations: number; isPerformant: boolean; }; } //# sourceMappingURL=sql-templates.d.ts.map