DO $$ BEGIN
 CREATE TYPE "status" AS ENUM('pending', 'success', 'error');
EXCEPTION
 WHEN duplicate_object THEN null;
END $$;
--> statement-breakpoint
CREATE TABLE IF NOT EXISTS "letters" (
	"id" serial PRIMARY KEY NOT NULL,
	"created_at" timestamp DEFAULT now(),
	"updated_at" timestamp DEFAULT now(),
	"first_name" text NOT NULL,
	"last_name" text NOT NULL,
	"lang" text NOT NULL,
	"email" text NOT NULL,
	"phone" text NOT NULL,
	"variant" text NOT NULL,
	"gender" text,
	"branch" text NOT NULL,
	"is_client" boolean NOT NULL,
	"message" text NOT NULL,
	"is_subscribed" boolean NOT NULL,
	"confirmation_token" text NOT NULL,
	"is_confirmed" boolean DEFAULT false,
	CONSTRAINT "letters_email_unique" UNIQUE("email")
);
--> statement-breakpoint
CREATE TABLE IF NOT EXISTS "messages" (
	"id" serial PRIMARY KEY NOT NULL,
	"letter_id" integer,
	"from" text NOT NULL,
	"to" text NOT NULL,
	"status" "status" NOT NULL
);
--> statement-breakpoint
DO $$ BEGIN
 ALTER TABLE "messages" ADD CONSTRAINT "messages_letter_id_letters_id_fk" FOREIGN KEY ("letter_id") REFERENCES "letters"("id") ON DELETE no action ON UPDATE no action;
EXCEPTION
 WHEN duplicate_object THEN null;
END $$;
