import { FlywayCommand } from "../types/types"; export type FlywayRawExecutionResponse = { success: boolean; response: string; }; export type FlywayMigrateResponse = { initialSchemaVersion: string | undefined; targetSchemaVersion: string | undefined; schemaName: string; migrations: { category: string; version: string; description: string; type: string; filepath: string; executionTime: number; }[]; migrationsExecuted: number; success: boolean; flywayVersion: string; database: string; warnings: Array; operation: FlywayCommand; }; export type FlywayCleanResponse = { schemasCleaned: Array; schemasDropped: Array; flywayVersion: string; database: string; warning: Array; operation: FlywayCommand; }; export type FlywayInfoResponse = { schemaVersion: string | undefined; schemaName: string; migrations: { category: string; version: string; description: string; type: string; installedOnUTC: string; state: string; undoable: string; filepath: string; installedBy: string; executionTime: number; }[]; allSchemasEmpty: boolean; flywayVersion: string; database: string; warning: Array; operation: FlywayCommand; }; export type FlywayValidateResponse = { operation: FlywayCommand; }; export type FlywayUndoResponse = { operation: FlywayCommand; }; export type FlywayBaselineResponse = { operation: FlywayCommand; }; export type FlywayRepairResponse = { operation: FlywayCommand; }; export type FlywayResponse = FlywayMigrateResponse | FlywayCleanResponse | FlywayInfoResponse | FlywayValidateResponse | FlywayUndoResponse | FlywayBaselineResponse | FlywayRepairResponse; export type FlywayErrorResponse = { errorCode?: string; message?: string; stackTrace?: string; }; export type ParsedFlywayResponse = { error?: FlywayErrorResponse; flywayResponse?: T; }; export type NodeFlywayResponse = { success: boolean; error?: FlywayErrorResponse; flywayResponse?: T; additionalDetails: { executionTime: number; flywayCli: { location: string; source: string; version: string; hash: string; }; }; };