import type { Knex } from "knex";

export async function up(knex: Knex): Promise<void> {
  return knex.schema.createTable("integrations", (table) => {
    table.increments("id").primary();
    table.string("api_name").notNullable();
    table.string("api_key").notNullable();
    table.string("api_valid_till").notNullable();
    table.string("bearer_key").notNullable();
    table.timestamp("created_at").defaultTo(knex.fn.now());
    table.timestamp("updated_at").defaultTo(knex.fn.now());
    table.timestamp("deleted_at").nullable(); // soft delete
  });
}

export async function down(knex: Knex): Promise<void> {
  return knex.schema.dropTable("integrations");
}
