/**
 * Streaming Analyzer Types
 * Type definitions for streaming data analysis components
 */
import { DataType } from '../../core/types';
import type { Section3Config } from '../eda/types';
export interface StreamingConfig {
    chunkSize: number;
    memoryThreshold: number;
    enableAdaptiveChunking?: boolean;
    maxChunkSize?: number;
    minChunkSize?: number;
}
export interface StreamingAnalyzerConfig extends Section3Config {
    chunkSize: number;
    memoryThresholdMB: number;
    maxRowsAnalyzed: number;
    adaptiveChunkSizing: boolean;
    enableMemoryOptimization: boolean;
    enableAdaptiveStreaming: boolean;
    enableParallelProcessing: boolean;
}
export interface StreamingAnalyzerInput {
    data: string[][];
    headers: string[];
    columnTypes: DataType[];
    config?: StreamingConfig;
}
export interface BivariateConfig {
    significanceLevel: number;
    maxComparisons: number;
    enableAdvancedTests?: boolean;
    correlationThreshold?: number;
}
export interface BivariateAnalyzerInput {
    data: string[][];
    headers: string[];
    columnTypes: DataType[];
    numericalColumns: string[];
    categoricalColumns: string[];
    config?: BivariateConfig;
}
export interface ProcessingSummary {
    totalRowsProcessed: number;
    chunksProcessed: number;
    memoryUsage: {
        peakUsage: number;
        averageUsage: number;
    };
    processingTime: number;
}
export interface StreamingColumnAnalysis {
    columnName: string;
    dataType: DataType;
    statistics: {
        count: number;
        uniqueValues?: number;
        nullCount?: number;
        mean?: number;
        standardDeviation?: number;
        min?: number;
        max?: number;
    };
}
export interface StreamingAnalyzerResult {
    columnAnalyses: StreamingColumnAnalysis[];
    processingSummary: ProcessingSummary;
    metadata: {
        analysisStartTime: Date;
        analysisEndTime: Date;
        version: string;
    };
}
export interface BivariateRelationship {
    column1: string;
    column2: string;
    relationshipType: 'numerical-numerical' | 'numerical-categorical' | 'categorical-categorical';
    strength: number;
    significance: number;
    method: string;
}
export interface BivariateAnalyzerResult {
    numericalRelationships: BivariateRelationship[];
    categoricalRelationships: BivariateRelationship[];
    mixedRelationships: BivariateRelationship[];
    metadata: {
        totalComparisons: number;
        significantRelationships: number;
        analysisTime: number;
    };
}
//# sourceMappingURL=types.d.ts.map