diff --git a/src/Infrastructure/Infrastructure.csproj b/src/Infrastructure/Infrastructure.csproj
index adffd58..aab82f7 100644
--- a/src/Infrastructure/Infrastructure.csproj
+++ b/src/Infrastructure/Infrastructure.csproj
@@ -24,4 +24,7 @@
+
+
+
diff --git a/src/Infrastructure/Options/AudienceOptions.cs b/src/Infrastructure/Options/AudienceOptions.cs
new file mode 100644
index 0000000..fb6fc30
--- /dev/null
+++ b/src/Infrastructure/Options/AudienceOptions.cs
@@ -0,0 +1,14 @@
+namespace Infrastructure.Options;
+
+public sealed class AudienceOptions : OptionsBase
+{
+ public const string Name = "Audience";
+
+ public string Issuer { get; set; }
+
+ public string Audience { get; set; }
+
+ public string Secret { get; set; }
+
+ public int Expiration { get; set; }
+}
\ No newline at end of file
diff --git a/src/Infrastructure/Options/OptionsBase.cs b/src/Infrastructure/Options/OptionsBase.cs
new file mode 100644
index 0000000..44d16a7
--- /dev/null
+++ b/src/Infrastructure/Options/OptionsBase.cs
@@ -0,0 +1,6 @@
+namespace Infrastructure.Options;
+
+public abstract class OptionsBase
+{
+ public bool IsEnable { get; set; }
+}
\ No newline at end of file
diff --git a/src/Infrastructure/Options/RedisOptions.cs b/src/Infrastructure/Options/RedisOptions.cs
new file mode 100644
index 0000000..ff275e9
--- /dev/null
+++ b/src/Infrastructure/Options/RedisOptions.cs
@@ -0,0 +1,12 @@
+namespace Infrastructure.Options;
+
+public sealed class RedisOptions : OptionsBase
+{
+ public const string Name = "Redis";
+
+ public string InstanceName { get; set; }
+
+ public string Host { get; set; }
+
+ public string Password { get; set; }
+}
\ No newline at end of file
diff --git a/src/Infrastructure/Options/SqlSugarOptions.cs b/src/Infrastructure/Options/SqlSugarOptions.cs
new file mode 100644
index 0000000..e7a3b68
--- /dev/null
+++ b/src/Infrastructure/Options/SqlSugarOptions.cs
@@ -0,0 +1,23 @@
+namespace Infrastructure.Options;
+
+public sealed class SqlSugarOptions : OptionsBase
+{
+ public const string Name = "SqlSugar";
+
+ public SnowFlakeOptions? SnowFlake { get; set; }
+
+ public string Server { get; set; }
+
+ public int? Port { get; set; }
+
+ public string Database { get; set; }
+
+ public string UserId { get; set; }
+
+ public string Password { get; set; }
+}
+
+public class SnowFlakeOptions : OptionsBase
+{
+ public int WorkerId { get; set; }
+}
\ No newline at end of file
diff --git a/src/Infrastructure/Options/VersionOptions.cs b/src/Infrastructure/Options/VersionOptions.cs
new file mode 100644
index 0000000..1a462c8
--- /dev/null
+++ b/src/Infrastructure/Options/VersionOptions.cs
@@ -0,0 +1,11 @@
+namespace Infrastructure.Options;
+
+public class VersionOptions : OptionsBase
+{
+ public const string Name = "Version";
+ public string HeaderName { get; set; }
+
+ public string ParameterName { get; set; }
+
+ public string SwaggerTitle { get; set; }
+}
\ No newline at end of file