diff --git a/AbstractJewelryStoreModels/AbstractJewelryStoreModels.csproj b/AbstractJewelryStoreModels/AbstractJewelryStoreModels.csproj
new file mode 100644
index 0000000..27ac386
--- /dev/null
+++ b/AbstractJewelryStoreModels/AbstractJewelryStoreModels.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net6.0
+ enable
+ enable
+
+
+
diff --git a/AbstractJewelryStoreModels/Enums/OrderStatus.cs b/AbstractJewelryStoreModels/Enums/OrderStatus.cs
new file mode 100644
index 0000000..158ca89
--- /dev/null
+++ b/AbstractJewelryStoreModels/Enums/OrderStatus.cs
@@ -0,0 +1,11 @@
+namespace AbstractJewelryStoreModels.Enums
+{
+ public enum OrderStatus
+ {
+ Неизвестен = -1,
+ Принят = 0,
+ Выполняется = 1,
+ Готов = 2,
+ Выдан = 3
+ }
+}
\ No newline at end of file
diff --git a/AbstractJewelryStoreModels/IId.cs b/AbstractJewelryStoreModels/IId.cs
new file mode 100644
index 0000000..1fe2397
--- /dev/null
+++ b/AbstractJewelryStoreModels/IId.cs
@@ -0,0 +1,7 @@
+namespace AbstractJewelryStoreModels
+{
+ public interface IId
+ {
+ int Id { get; }
+ }
+}
diff --git a/AbstractJewelryStoreModels/Models/IComponentModel.cs b/AbstractJewelryStoreModels/Models/IComponentModel.cs
new file mode 100644
index 0000000..c935902
--- /dev/null
+++ b/AbstractJewelryStoreModels/Models/IComponentModel.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace AbstractJewelryStoreModels.Models
+{
+ internal class IComponentModel : IId
+ {
+ string ComponentName { get; }
+ double Cost { get; }
+ }
+}
diff --git a/AbstractJewelryStoreModels/Models/IOrderModel.cs b/AbstractJewelryStoreModels/Models/IOrderModel.cs
new file mode 100644
index 0000000..4b792ce
--- /dev/null
+++ b/AbstractJewelryStoreModels/Models/IOrderModel.cs
@@ -0,0 +1,20 @@
+using AbstractJewelryStoreModels.Enums;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace AbstractJewelryStoreModels.Models
+{
+ internal class IOrderModel : IId
+ {
+ int ProductId { get; }
+ int Count { get; }
+ double Sum { get; }
+ OrderStatus Status { get; }
+ DateTime DateCreate { get; }
+ DateTime? DateImplement { get; }
+
+ }
+}
diff --git a/AbstractJewelryStoreModels/Models/IProductModel.cs b/AbstractJewelryStoreModels/Models/IProductModel.cs
new file mode 100644
index 0000000..c131dfc
--- /dev/null
+++ b/AbstractJewelryStoreModels/Models/IProductModel.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace AbstractJewelryStoreModels.Models
+{
+ internal class IProductModel : IId
+ {
+ string ProductName { get; }
+ double Price { get; }
+ Dictionary ProductComponents { get; }
+
+ }
+}