import type { RdiAiDataSetupProposal, RdiAiMessage, RdiAiSession, RdiAiSessionCheckpoint, RdiTransformationAiConfig, RdiTransformationDataSetup, RdiTransformationFieldSchema, RdiTransformationInputEvent, RdiTransformationSourceType } from '../../../capabilities/transformationAi'; import type { RdiTransformationDryRunResult } from '../../../capabilities/transformationDryRun'; import type { TransformationAssistantContainerProps, TransformationDryRunTarget, TransformationDataSetupAiMode, TransformationInspectorTab, TransformationPlaygroundStage, TransformationResultTab } from '../TransformationAssistant.types'; export declare const useTransformationAssistant: ({ mode, scope, context, currentYaml, isCurrentYamlEditable, isApplyDisabled, applyDisabledReason, onApplyProposal, onCurrentYamlChange }: TransformationAssistantContainerProps) => { dryRunExplanationError: string | undefined; onOpenErrorExplanation: () => void; mode: import("../TransformationAssistant.types").TransformationAssistantMode; isConfigLoading: boolean; aiConfig: RdiTransformationAiConfig; isCapabilityEnabled: boolean; isMissingCapability: boolean; canChat: boolean; canDryRun: boolean; sessions: RdiAiSession[]; selectedSessionId: string | undefined; sessionTitle: string; prompt: string; desiredBehavior: string; sampleInput: string; mockLookupsInput: string; expectationsInput: string; manualSchemaInput: string; workingYaml: string; history: RdiAiSessionCheckpoint[]; isCheckpointingAvailable: boolean; isStateDirty: boolean; canSaveCurrentState: boolean; isSavingState: boolean; proposedYaml: string | undefined; proposal: { yaml: string; id: string; explanation: string; warnings?: string[]; limitations?: string[]; } | undefined; messages: RdiAiMessage[]; dryRunResult: RdiTransformationDryRunResult | undefined; comparisonDryRunResult: RdiTransformationDryRunResult | undefined; dryRunResultLabel: string; comparisonDryRunResultLabel: string | undefined; findingsAnalysis: string | undefined; findingsAnalysisError: string | undefined; jobExplanation: string | undefined; jobExplanationError: string | undefined; outcomeExplanation: string | undefined; outcomeExplanationError: string | undefined; outcomeExplanationAvailableScopes: import("../utils/outcomeExplanation").OutcomeExplanationScope[]; outcomeExplanationScope: import("../utils/outcomeExplanation").OutcomeExplanationScope; outcomeExplanationQuestion: string; runProposalInDryRun: boolean; error: string | undefined; chatError: string | undefined; contextPreview: string; feedbackContext: string; isGenerating: boolean; isCreatingSession: boolean; isClearingSessions: boolean; isGeneratingSamples: boolean; isGeneratingDataSetup: boolean; isAnalyzingFindings: boolean; isExplainingJob: boolean; isExplainingOutcome: boolean; isDryRunning: boolean; isApplying: boolean; isApplyDisabled: boolean; requiresApplyOverride: boolean; applyDisabledReason: string | undefined; applyOverrideReason: string | undefined; lookupFixturesAvailable: boolean; expectationsAvailable: boolean; isCurrentYamlEditable: boolean; maxPromptChars: number; dataSetup: RdiTransformationDataSetup; dataSetupProposal: RdiAiDataSetupProposal | undefined; dataSetupAiMode: TransformationDataSetupAiMode | undefined; dataSetupAiPrompt: string; dataSetupFromJobYaml: string; dataSetupFromJobGuidance: string; dataSetupFromJobError: string | undefined; playgroundStage: TransformationPlaygroundStage; dryRunTarget: TransformationDryRunTarget; resultTab: TransformationResultTab; inspectorTab: TransformationInspectorTab | undefined; isAssistantRailOpen: boolean; autoExplainFindings: boolean; isProposalApplied: boolean; isOverrideConfirmationOpen: boolean; isOverrideAcknowledged: boolean; isDiscardConfirmationOpen: boolean; isJobExplanationOpen: boolean; isOutcomeExplanationOpen: boolean; isDataSetupFromJobOpen: boolean; isUnsavedChangesConfirmationOpen: boolean; discardReason: string; canUndoDiscard: boolean; canExplainOutcome: boolean; onSessionChange: (sessionId: string) => Promise; onNewSession: () => Promise; onSessionTitleChange: import("react").Dispatch>; onRenameSession: () => Promise; onDeleteSession: () => Promise; onClearAllSessions: () => Promise; onPromptChange: import("react").Dispatch>; onDesiredBehaviorChange: import("react").Dispatch>; onSampleInputChange: import("react").Dispatch>; onMockLookupsInputChange: import("react").Dispatch>; onExpectationsInputChange: import("react").Dispatch>; onManualSchemaInputChange: import("react").Dispatch>; onWorkingYamlChange: (value: string) => void; onProposedYamlChange: (value: string) => void; onRestoreHistory: (entry: RdiAiSessionCheckpoint) => void; onSaveCurrentState: () => Promise; onSaveUnsavedChanges: () => Promise; onDiscardUnsavedChanges: () => Promise; onCancelUnsavedChanges: () => void; onSendMessage: () => Promise; onExplainJob: () => Promise; onCloseJobExplanation: () => void; onOpenOutcomeExplanation: () => void; onCloseOutcomeExplanation: () => void; onCancelOutcomeExplanation: () => void; onOutcomeExplanationScopeChange: import("react").Dispatch>; onOutcomeExplanationQuestionChange: import("react").Dispatch>; onExplainOutcome: (regenerate?: boolean) => Promise; onRetryMessage: () => Promise; onGenerateSampleInput: () => Promise; onCancelGeneration: () => void; onDryRun: () => Promise; onExplainFindings: () => Promise; onRunProposalInDryRunChange: import("react").Dispatch>; onApplyProposal: () => Promise; onDismissError: () => void; onDismissChatError: () => void; onDataSourceTypeChange: import("react").Dispatch>; onDatabaseNameChange: (databaseName: string) => void; onResetDataSetup: () => void; onEntityNameChange: (entityId: string, name: string) => void; onAddEntity: () => void; onRemoveEntity: (entityId: string) => void; onAddField: (entityId: string) => void; onUpdateField: (entityId: string, fieldId: string, patch: Partial) => void; onRemoveField: (entityId: string, fieldId: string) => void; onAddEvent: () => void; onUpdateEvent: (eventId: string, patch: Partial) => void; onEventValueChange: (eventId: string, side: "before" | "after", { field, value }: { field: RdiTransformationFieldSchema; value: string; }) => void; onRemoveEvent: (eventId: string) => void; onMoveEvent: (eventId: string, direction: -1 | 1) => void; onApplyDataSetupProposal: () => Promise; onDismissDataSetupProposal: () => void; onOpenDataSetupAi: (nextMode: TransformationDataSetupAiMode) => void; onCloseDataSetupAi: () => void; onDataSetupAiPromptChange: import("react").Dispatch>; onRequestDataSetup: () => Promise; onOpenDataSetupFromJob: () => void; onCloseDataSetupFromJob: () => void; onDataSetupFromJobYamlChange: import("react").Dispatch>; onDataSetupFromJobGuidanceChange: import("react").Dispatch>; onGenerateDataSetupFromJob: () => Promise; onCancelDataSetupGeneration: () => void; onDownloadJob: (yaml: string, version: "current" | "proposed") => void; onPlaygroundStageChange: import("react").Dispatch>; onDryRunTargetChange: import("react").Dispatch>; onResultTabChange: import("react").Dispatch>; onOpenInspector: import("react").Dispatch>; onCloseInspector: () => void; onAssistantRailOpenChange: import("react").Dispatch>; onAutoExplainFindingsChange: (checked: boolean) => void; onOpenOverrideConfirmation: () => void; onCloseOverrideConfirmation: () => void; onOverrideAcknowledgedChange: import("react").Dispatch>; onConfirmApplyOverride: () => Promise; onOpenDiscardConfirmation: () => void; onCloseDiscardConfirmation: () => void; onDiscardReasonChange: import("react").Dispatch>; onConfirmDiscard: () => void; onUndoDiscard: () => void; onDismissUndoDiscard: () => void; };