// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.

package model

import (
	"time"
)

const TableNameAdTemplate = "ad_templates"

// AdTemplate mapped from table <ad_templates>
type AdTemplate struct {
	ID          string     `gorm:"column:id;type:uuid;primaryKey" json:"id"`
	UserID      string     `gorm:"column:user_id;type:uuid;not null;index:idx_ad_templates_user_id,priority:1" json:"user_id"`
	Name        string     `gorm:"column:name;type:text;not null" json:"name"`
	Description *string    `gorm:"column:description;type:text" json:"description"`
	VastTagURL  string     `gorm:"column:vast_tag_url;type:text;not null" json:"vast_tag_url"`
	AdFormat    *string    `gorm:"column:ad_format;type:character varying(50);not null;default:pre-roll" json:"ad_format"`
	Duration    *int64     `gorm:"column:duration;type:bigint" json:"duration"`
	IsActive    *bool      `gorm:"column:is_active;type:boolean;not null;default:true" json:"is_active"`
	CreatedAt   *time.Time `gorm:"column:created_at;type:timestamp with time zone" json:"created_at"`
	UpdatedAt   *time.Time `gorm:"column:updated_at;type:timestamp with time zone" json:"updated_at"`
	IsDefault   bool       `gorm:"column:is_default;type:boolean;not null" json:"is_default"`
	Version     *int64     `gorm:"column:version;type:bigint;not null;default:1;version" json:"-"`
}

// TableName AdTemplate's table name
func (*AdTemplate) TableName() string {
	return TableNameAdTemplate
}
