/**
 * Schema Inference Service
 *
 * Automatically infers schema definitions from structured data (parquet files, JSON arrays).
 * Used for auto-creating user-specific schemas when no schema exists for an entity type.
 */
import type { SchemaDefinition, ReducerConfig } from "./schema_registry.js";
/**
 * Inferred schema result
 */
export interface InferredSchema {
    schemaDefinition: SchemaDefinition;
    reducerConfig: ReducerConfig;
    metadata: {
        field_count: number;
        inferred_types: Record<string, string>;
        confidence: number;
    };
}
/**
 * Infer schema from array of entity objects
 *
 * Samples the first N entities to determine field types and creates a schema definition.
 *
 * @param entities - Array of entity objects
 * @param entityType - Entity type name
 * @param options - Optional configuration (sample size)
 * @returns Inferred schema with definition and reducer config
 */
export declare function inferSchemaFromEntities(entities: Array<Record<string, unknown>>, entityType: string, options?: {
    sampleSize?: number;
}): Promise<InferredSchema>;
/**
 * Infer schema from parquet file metadata
 *
 * Extracts type information directly from parquet schema.
 *
 * @param filePath - Path to parquet file
 * @param entityType - Entity type name
 * @returns Inferred schema with definition and reducer config
 */
export declare function inferSchemaFromParquet(filePath: string, entityType: string): Promise<InferredSchema>;
//# sourceMappingURL=schema_inference.d.ts.map