// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using TwilioSMSReceiver.Data;

#nullable disable

namespace TwilioSMSReceiver.Data.Migrations
{
    [DbContext(typeof(SMSDbCtx))]
    partial class SMSDbCtxModelSnapshot : ModelSnapshot
    {
        protected override void BuildModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder.HasAnnotation("ProductVersion", "6.0.1");

            modelBuilder.Entity("TwilioSMSReceiver.Data.Models.MMSModel", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<string>("OriginalMMSData")
                        .HasColumnType("TEXT");

                    b.Property<int>("SMSModelId")
                        .HasColumnType("INTEGER");

                    b.HasKey("Id");

                    b.HasIndex("SMSModelId");

                    b.ToTable("MMSMessages");
                });

            modelBuilder.Entity("TwilioSMSReceiver.Data.Models.MSTeamsWebHook", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<string>("WebHookUri")
                        .HasColumnType("TEXT");

                    b.HasKey("Id");

                    b.ToTable("MSTeamsWebHooks");
                });

            modelBuilder.Entity("TwilioSMSReceiver.Data.Models.SMSModel", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<bool>("IsForwardedYet")
                        .HasColumnType("INTEGER");

                    b.Property<string>("MessageContents")
                        .HasColumnType("TEXT");

                    b.Property<string>("ReceivedNumber")
                        .IsRequired()
                        .HasColumnType("TEXT");

                    b.Property<string>("SenderNumber")
                        .IsRequired()
                        .HasColumnType("TEXT");

                    b.Property<DateTime>("TimeReceived")
                        .HasColumnType("TEXT");

                    b.HasKey("Id");

                    b.ToTable("SMSMessages");
                });

            modelBuilder.Entity("TwilioSMSReceiver.Data.Models.MMSModel", b =>
                {
                    b.HasOne("TwilioSMSReceiver.Data.Models.SMSModel", "ParentSMSMessage")
                        .WithMany("MMSContent")
                        .HasForeignKey("SMSModelId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("ParentSMSMessage");
                });

            modelBuilder.Entity("TwilioSMSReceiver.Data.Models.SMSModel", b =>
                {
                    b.Navigation("MMSContent");
                });
#pragma warning restore 612, 618
        }
    }
}
