import type { createClient } from '@supabase/supabase-js';
import { SchemaAdapter } from '../../core/schema-adapter';
type SupabaseClient = ReturnType<typeof createClient>;
export interface SchemaValidationIssue {
    type: 'error' | 'warning';
    message: string;
    table?: string;
    field?: string;
}
export interface SchemaValidationResult {
    valid: boolean;
    issues: SchemaValidationIssue[];
    recommendations: string[];
}
export declare class SchemaValidator {
    private client;
    private schemaAdapter;
    constructor(client: SupabaseClient, schemaAdapter: SchemaAdapter);
    /**
     * Validate schema compatibility before seeding
     */
    validateSchema(): Promise<SchemaValidationResult>;
    /**
     * Validate that required fields exist in a table
     */
    private validateTableFields;
    /**
     * Check if a field exists in a table
     */
    private fieldExists;
    /**
     * Validate auth configuration
     */
    private validateAuthConfiguration;
    /**
     * Print validation results
     */
    static printResults(result: SchemaValidationResult): void;
}
export {};
//# sourceMappingURL=schema-validator.d.ts.map