import { IAutoBePreliminaryGetAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetAnalysisSections";
import { IAutoBePreliminaryGetDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetDatabaseSchemas";
import { IAutoBePreliminaryGetRealizeCollectors } from "../../common/structures/IAutoBePreliminaryGetRealizeCollectors";
import { IAutoBePreliminaryGetRealizeTransformers } from "../../common/structures/IAutoBePreliminaryGetRealizeTransformers";
export interface IAutoBeRealizeOperationCorrectApplication {
    /**
     * Process provider correction task or preliminary data requests.
     *
     * @param props Preliminary data request or write submission
     */
    process(props: IAutoBeRealizeOperationCorrectApplication.IProps): void;
}
export declare namespace IAutoBeRealizeOperationCorrectApplication {
    interface IProps {
        /**
         * Think before you act.
         *
         * For preliminary requests: what critical information is missing and why?
         *
         * For write: what errors you're fixing and the correction strategy.
         */
        thinking: string;
        /**
         * Action to perform. Exhausted preliminary types are removed from the
         * union, physically preventing repeated calls.
         */
        request: IWrite | IAutoBePreliminaryGetAnalysisSections | IAutoBePreliminaryGetDatabaseSchemas | IAutoBePreliminaryGetRealizeCollectors | IAutoBePreliminaryGetRealizeTransformers;
    }
    /** Correct provider compilation errors via think/draft/revise. */
    interface IWrite {
        /** Type discriminator for write submission. */
        type: "write";
        /**
         * Error analysis and correction strategy. Understand:
         *
         * - Error patterns and root causes
         * - Required fixes and their impact
         * - Whether quick fixes or deep refactoring is needed
         * - Database schema and API contract constraints
         */
        think: string;
        /** Corrected implementation applying all fixes from think phase. */
        draft: string;
        /** Reviews draft corrections and produces final error-free code. */
        revise: IReviseProps;
    }
    interface IReviseProps {
        /**
         * Verify corrections:
         *
         * - All TypeScript errors resolved
         * - Business logic remains intact
         * - No new errors introduced
         * - Performance and security preserved
         */
        review: string;
        /**
         * Final error-free code with all corrections applied, or null if draft
         * needs no changes.
         */
        final: string | null;
    }
}
