import 'package:drift/drift.dart';

@DataClassName('DriftRecentMiniApp')
class RecentMiniApps extends Table {
  TextColumn get id => text()();
  TextColumn get name => text().nullable()();
  TextColumn get openuid => text().nullable()();
  TextColumn get devId => text().nullable()();
  TextColumn get icon => text().nullable()();
  TextColumn get iconGaussian => text().nullable()();
  TextColumn get downloadUrl => text().nullable()();
  TextColumn get description => text().nullable()();
  IntColumn get version => integer().nullable()();
  IntColumn get typ => integer().nullable()();
  IntColumn get flag => integer().nullable()();
  IntColumn get reviewStatus => integer().nullable()();
  IntColumn get favoriteAt => integer().nullable()();
  IntColumn get isActive => integer().nullable()();
  IntColumn get createdAt => integer().nullable()();
  IntColumn get updatedAt => integer().nullable()();
  IntColumn get deletedAt => integer().nullable()();
  RealColumn get score => real().nullable()();
  TextColumn get channels => text().nullable()();
  TextColumn get devName => text().nullable()();
  TextColumn get pictureGaussian => text().nullable()();
  TextColumn get picture => text().nullable()();
  IntColumn get commentNum => integer().nullable()();
  IntColumn get lastLoginAt => integer().nullable()();
  TextColumn get screen => text().nullable()();

  @override
  Set<Column> get primaryKey => {id};

  @override
  String get tableName => 'recent_mini_app';
}
