diff --git a/AsbCloudApp/Requests/ExportOptions/IExportOptionsRequest.cs b/AsbCloudApp/Requests/ExportOptions/IExportOptionsRequest.cs
new file mode 100644
index 00000000..8d65572b
--- /dev/null
+++ b/AsbCloudApp/Requests/ExportOptions/IExportOptionsRequest.cs
@@ -0,0 +1,8 @@
+namespace AsbCloudApp.Requests.ExportOptions;
+
+///
+/// Параметры экспорта
+///
+public interface IExportOptionsRequest
+{
+}
\ No newline at end of file
diff --git a/AsbCloudApp/Requests/ExportOptions/WellRelatedExportRequest.cs b/AsbCloudApp/Requests/ExportOptions/WellRelatedExportRequest.cs
new file mode 100644
index 00000000..63b185cd
--- /dev/null
+++ b/AsbCloudApp/Requests/ExportOptions/WellRelatedExportRequest.cs
@@ -0,0 +1,21 @@
+namespace AsbCloudApp.Requests.ExportOptions;
+
+///
+/// Параметры экспорта
+///
+public class WellRelatedExportRequest : IExportOptionsRequest
+{
+ ///
+ /// Конструктор
+ ///
+ /// Id скважины
+ public WellRelatedExportRequest(int idWell)
+ {
+ IdWell = idWell;
+ }
+
+ ///
+ /// Id скважины
+ ///
+ public int IdWell { get; }
+}
\ No newline at end of file
diff --git a/AsbCloudApp/Services/IExportService.cs b/AsbCloudApp/Services/IExportService.cs
new file mode 100644
index 00000000..b921fec5
--- /dev/null
+++ b/AsbCloudApp/Services/IExportService.cs
@@ -0,0 +1,21 @@
+using System.IO;
+using System.Threading;
+using System.Threading.Tasks;
+using AsbCloudApp.Requests.ExportOptions;
+
+namespace AsbCloudApp.Services;
+
+///
+/// Экспорт данных
+///
+public interface IExportService
+ where TOptions : IExportOptionsRequest
+{
+ ///
+ /// Экспортировать данные
+ ///
+ ///
+ ///
+ ///
+ Task<(string FileName, Stream File)> ExportAsync(TOptions options, CancellationToken token);
+}
\ No newline at end of file
diff --git a/AsbCloudApp/Services/IProcessMapPlanExportService.cs b/AsbCloudApp/Services/IProcessMapPlanExportService.cs
deleted file mode 100644
index 6c226a55..00000000
--- a/AsbCloudApp/Services/IProcessMapPlanExportService.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-using System.IO;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace AsbCloudApp.Services;
-
-///
-/// Экспорт РТК
-///
-public interface IProcessMapPlanExportService
-{
- ///
- /// Экспортировать РТК по скважине
- ///
- ///
- ///
- ///
- Task<(string FileName, Stream File)> ExportAsync(int idWell, CancellationToken token);
-}
\ No newline at end of file
diff --git a/AsbCloudApp/Services/ITrajectoryExportService.cs b/AsbCloudApp/Services/ITrajectoryExportService.cs
deleted file mode 100644
index 610ccf9f..00000000
--- a/AsbCloudApp/Services/ITrajectoryExportService.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-using System.IO;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace AsbCloudApp.Services;
-
-///
-/// Экспорт траекторий
-///
-public interface ITrajectoryExportService
-{
- ///
- /// Экспортировать траектории по скважине
- ///
- ///
- ///
- ///
- Task<(string FileName, Stream File)> ExportAsync(int idWell, CancellationToken token);
-}
\ No newline at end of file