import {sequelize} from "../app";
import {DataTypes, InferAttributes, InferCreationAttributes, Model} from "sequelize";

export interface IGuild extends Model<InferAttributes<IGuild>, InferCreationAttributes<IGuild>> {
    guildId: number
    emotes: number
    language: string
    coins: number
    messagesSent: number
}

const GuildSchema = sequelize.define<IGuild>('guilds', {
    guildId: {
        type: DataTypes.BIGINT,
        primaryKey: true,
        allowNull: false
    },
    language: {
        type: DataTypes.STRING
    },
    emotes: {
        type: DataTypes.INTEGER,
        defaultValue: 0
    },
    coins: {
        type: DataTypes.INTEGER
    },
    messagesSent: {
        type: DataTypes.INTEGER,
        defaultValue: 0
    }
}, {createdAt: false, updatedAt: false});

export const Guild = GuildSchema;