content: // dart format width=80
  import 'package:drift/internal/versioned_schema.dart' as i0;
  import 'package:drift/drift.dart' as i1;
  import 'dart:typed_data' as i2;
  import 'package:drift/drift.dart'; // ignore_for_file: type=lint,unused_import
  
  // GENERATED BY drift_dev, DO NOT MODIFY.
  final class Schema2 extends i0.VersionedSchema {
    Schema2({required super.database}) : super(version: 2);
    @override
    late final List<i1.DatabaseSchemaEntity> entities = [
      transactions,
      walletMetadatas,
      labels,
      settings,
      payjoinSenders,
      payjoinReceivers,
      electrumServers,
      swaps,
      autoSwap,
    ];
    late final Shape0 transactions = Shape0(
      source: i0.VersionedTable(
        entityName: 'transactions',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(txid)'],
        columns: [
          _column_0,
          _column_1,
          _column_2,
          _column_3,
          _column_4,
          _column_5,
          _column_6,
          _column_7,
          _column_8,
          _column_9,
          _column_10,
          _column_11,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape1 walletMetadatas = Shape1(
      source: i0.VersionedTable(
        entityName: 'wallet_metadatas',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_13,
          _column_14,
          _column_15,
          _column_16,
          _column_17,
          _column_18,
          _column_19,
          _column_20,
          _column_21,
          _column_22,
          _column_23,
          _column_24,
          _column_25,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape2 labels = Shape2(
      source: i0.VersionedTable(
        entityName: 'labels',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(label, ref)'],
        columns: [_column_26, _column_27, _column_28, _column_29, _column_30],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape3 settings = Shape3(
      source: i0.VersionedTable(
        entityName: 'settings',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_32,
          _column_33,
          _column_34,
          _column_35,
          _column_36,
          _column_37,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape4 payjoinSenders = Shape4(
      source: i0.VersionedTable(
        entityName: 'payjoin_senders',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(uri)'],
        columns: [
          _column_38,
          _column_39,
          _column_40,
          _column_41,
          _column_42,
          _column_43,
          _column_44,
          _column_45,
          _column_46,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape5 payjoinReceivers = Shape5(
      source: i0.VersionedTable(
        entityName: 'payjoin_receivers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_51,
          _column_39,
          _column_52,
          _column_41,
          _column_53,
          _column_54,
          _column_45,
          _column_46,
          _column_55,
          _column_56,
          _column_57,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape6 electrumServers = Shape6(
      source: i0.VersionedTable(
        entityName: 'electrum_servers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(url)'],
        columns: [
          _column_58,
          _column_59,
          _column_60,
          _column_61,
          _column_62,
          _column_63,
          _column_39,
          _column_64,
          _column_65,
          _column_66,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape7 swaps = Shape7(
      source: i0.VersionedTable(
        entityName: 'swaps',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_67,
          _column_28,
          _column_68,
          _column_69,
          _column_39,
          _column_70,
          _column_71,
          _column_72,
          _column_73,
          _column_74,
          _column_75,
          _column_76,
          _column_77,
          _column_78,
          _column_79,
          _column_80,
          _column_81,
          _column_82,
          _column_83,
          _column_84,
          _column_85,
          _column_86,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape8 autoSwap = Shape8(
      source: i0.VersionedTable(
        entityName: 'auto_swap',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_87,
          _column_88,
          _column_89,
          _column_90,
          _column_91,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
  }
  
  class Shape0 extends i0.VersionedTable {
    Shape0({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get txid =>
        columnsByName['txid']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get version =>
        columnsByName['version']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get size =>
        columnsByName['size']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get vsize =>
        columnsByName['vsize']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get locktime =>
        columnsByName['locktime']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get vin =>
        columnsByName['vin']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get vout =>
        columnsByName['vout']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get blockhash =>
        columnsByName['blockhash']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get height =>
        columnsByName['height']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get confirmations =>
        columnsByName['confirmations']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get time =>
        columnsByName['time']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get blocktime =>
        columnsByName['blocktime']! as i1.GeneratedColumn<int>;
  }
  
  i1.GeneratedColumn<String> _column_0(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'txid',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_1(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'version',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<String> _column_2(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'size',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_3(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'vsize',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_4(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'locktime',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<String> _column_5(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'vin',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_6(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'vout',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_7(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'blockhash',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_8(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'height',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_9(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'confirmations',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_10(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'time',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_11(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'blocktime',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  
  class Shape1 extends i0.VersionedTable {
    Shape1({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get id =>
        columnsByName['id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get masterFingerprint =>
        columnsByName['master_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get xpubFingerprint =>
        columnsByName['xpub_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isEncryptedVaultTested =>
        columnsByName['is_encrypted_vault_tested']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isPhysicalBackupTested =>
        columnsByName['is_physical_backup_tested']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get latestEncryptedBackup =>
        columnsByName['latest_encrypted_backup']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get latestPhysicalBackup =>
        columnsByName['latest_physical_backup']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get xpub =>
        columnsByName['xpub']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get externalPublicDescriptor =>
        columnsByName['external_public_descriptor']!
            as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get internalPublicDescriptor =>
        columnsByName['internal_public_descriptor']!
            as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get source =>
        columnsByName['source']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isDefault =>
        columnsByName['is_default']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<String> get label =>
        columnsByName['label']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<DateTime> get syncedAt =>
        columnsByName['synced_at']! as i1.GeneratedColumn<DateTime>;
  }
  
  i1.GeneratedColumn<String> _column_12(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'id',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_13(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'master_fingerprint',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_14(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'xpub_fingerprint',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<bool> _column_15(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_encrypted_vault_tested',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_encrypted_vault_tested" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<bool> _column_16(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_physical_backup_tested',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_physical_backup_tested" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<int> _column_17(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'latest_encrypted_backup',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_18(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'latest_physical_backup',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<String> _column_19(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'xpub',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_20(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'external_public_descriptor',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_21(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'internal_public_descriptor',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_22(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'source',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<bool> _column_23(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_default',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_default" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<String> _column_24(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'label',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<DateTime> _column_25(String aliasedName) =>
      i1.GeneratedColumn<DateTime>(
        'synced_at',
        aliasedName,
        true,
        type: i1.DriftSqlType.dateTime,
      );
  
  class Shape2 extends i0.VersionedTable {
    Shape2({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get label =>
        columnsByName['label']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get ref =>
        columnsByName['ref']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get type =>
        columnsByName['type']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get origin =>
        columnsByName['origin']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get spendable =>
        columnsByName['spendable']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<String> _column_26(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'label',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_27(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'ref',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_28(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'type',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_29(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'origin',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<bool> _column_30(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'spendable',
        aliasedName,
        true,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("spendable" IN (0, 1))',
        ),
      );
  
  class Shape3 extends i0.VersionedTable {
    Shape3({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<int> get id =>
        columnsByName['id']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get environment =>
        columnsByName['environment']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get bitcoinUnit =>
        columnsByName['bitcoin_unit']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get language =>
        columnsByName['language']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get currency =>
        columnsByName['currency']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get hideAmounts =>
        columnsByName['hide_amounts']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isSuperuser =>
        columnsByName['is_superuser']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<int> _column_31(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'id',
        aliasedName,
        false,
        hasAutoIncrement: true,
        type: i1.DriftSqlType.int,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'PRIMARY KEY AUTOINCREMENT',
        ),
      );
  i1.GeneratedColumn<String> _column_32(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'environment',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_33(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'bitcoin_unit',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_34(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'language',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_35(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'currency',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<bool> _column_36(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'hide_amounts',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("hide_amounts" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<bool> _column_37(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_superuser',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_superuser" IN (0, 1))',
        ),
      );
  
  class Shape4 extends i0.VersionedTable {
    Shape4({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get uri =>
        columnsByName['uri']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isTestnet =>
        columnsByName['is_testnet']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<String> get sender =>
        columnsByName['sender']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get walletId =>
        columnsByName['wallet_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get originalPsbt =>
        columnsByName['original_psbt']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get originalTxId =>
        columnsByName['original_tx_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get amountSat =>
        columnsByName['amount_sat']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get createdAt =>
        columnsByName['created_at']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get expireAfterSec =>
        columnsByName['expire_after_sec']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get proposalPsbt =>
        columnsByName['proposal_psbt']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get txId =>
        columnsByName['tx_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isExpired =>
        columnsByName['is_expired']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isCompleted =>
        columnsByName['is_completed']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<String> _column_38(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'uri',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<bool> _column_39(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_testnet',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_testnet" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<String> _column_40(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'sender',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_41(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'wallet_id',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_42(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'original_psbt',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_43(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'original_tx_id',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_44(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'amount_sat',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_45(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'created_at',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_46(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'expire_after_sec',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<String> _column_47(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'proposal_psbt',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_48(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'tx_id',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<bool> _column_49(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_expired',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_expired" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<bool> _column_50(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_completed',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_completed" IN (0, 1))',
        ),
      );
  
  class Shape5 extends i0.VersionedTable {
    Shape5({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get id =>
        columnsByName['id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get address =>
        columnsByName['address']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isTestnet =>
        columnsByName['is_testnet']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<String> get receiver =>
        columnsByName['receiver']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get walletId =>
        columnsByName['wallet_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get pjUri =>
        columnsByName['pj_uri']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<BigInt> get maxFeeRateSatPerVb =>
        columnsByName['max_fee_rate_sat_per_vb']! as i1.GeneratedColumn<BigInt>;
    i1.GeneratedColumn<int> get createdAt =>
        columnsByName['created_at']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get expireAfterSec =>
        columnsByName['expire_after_sec']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<i2.Uint8List> get originalTxBytes =>
        columnsByName['original_tx_bytes']! as i1.GeneratedColumn<i2.Uint8List>;
    i1.GeneratedColumn<String> get originalTxId =>
        columnsByName['original_tx_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get amountSat =>
        columnsByName['amount_sat']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get proposalPsbt =>
        columnsByName['proposal_psbt']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get txId =>
        columnsByName['tx_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isExpired =>
        columnsByName['is_expired']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isCompleted =>
        columnsByName['is_completed']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<String> _column_51(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'address',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_52(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'receiver',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_53(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'pj_uri',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<BigInt> _column_54(String aliasedName) =>
      i1.GeneratedColumn<BigInt>(
        'max_fee_rate_sat_per_vb',
        aliasedName,
        false,
        type: i1.DriftSqlType.bigInt,
      );
  i1.GeneratedColumn<i2.Uint8List> _column_55(String aliasedName) =>
      i1.GeneratedColumn<i2.Uint8List>(
        'original_tx_bytes',
        aliasedName,
        true,
        type: i1.DriftSqlType.blob,
      );
  i1.GeneratedColumn<String> _column_56(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'original_tx_id',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_57(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'amount_sat',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  
  class Shape6 extends i0.VersionedTable {
    Shape6({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get url =>
        columnsByName['url']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get socks5 =>
        columnsByName['socks5']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get stopGap =>
        columnsByName['stop_gap']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get timeout =>
        columnsByName['timeout']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get retry =>
        columnsByName['retry']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<bool> get validateDomain =>
        columnsByName['validate_domain']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isTestnet =>
        columnsByName['is_testnet']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isLiquid =>
        columnsByName['is_liquid']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isActive =>
        columnsByName['is_active']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get priority =>
        columnsByName['priority']! as i1.GeneratedColumn<int>;
  }
  
  i1.GeneratedColumn<String> _column_58(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'url',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_59(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'socks5',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_60(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'stop_gap',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_61(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'timeout',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_62(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'retry',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<bool> _column_63(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'validate_domain',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("validate_domain" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<bool> _column_64(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_liquid',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_liquid" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<bool> _column_65(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_active',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_active" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<int> _column_66(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'priority',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  
  class Shape7 extends i0.VersionedTable {
    Shape7({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get id =>
        columnsByName['id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get type =>
        columnsByName['type']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get direction =>
        columnsByName['direction']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get status =>
        columnsByName['status']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isTestnet =>
        columnsByName['is_testnet']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get keyIndex =>
        columnsByName['key_index']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get creationTime =>
        columnsByName['creation_time']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get completionTime =>
        columnsByName['completion_time']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get receiveWalletId =>
        columnsByName['receive_wallet_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get sendWalletId =>
        columnsByName['send_wallet_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get invoice =>
        columnsByName['invoice']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get paymentAddress =>
        columnsByName['payment_address']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get paymentAmount =>
        columnsByName['payment_amount']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get receiveAddress =>
        columnsByName['receive_address']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get receiveTxid =>
        columnsByName['receive_txid']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get sendTxid =>
        columnsByName['send_txid']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get preimage =>
        columnsByName['preimage']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get refundAddress =>
        columnsByName['refund_address']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get refundTxid =>
        columnsByName['refund_txid']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get boltzFees =>
        columnsByName['boltz_fees']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get lockupFees =>
        columnsByName['lockup_fees']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get claimFees =>
        columnsByName['claim_fees']! as i1.GeneratedColumn<int>;
  }
  
  i1.GeneratedColumn<String> _column_67(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'id',
        aliasedName,
        false,
        additionalChecks: i1.GeneratedColumn.checkTextLength(
          minTextLength: 12,
          maxTextLength: 12,
        ),
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_68(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'direction',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_69(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'status',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_70(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'key_index',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_71(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'creation_time',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_72(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'completion_time',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<String> _column_73(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'receive_wallet_id',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_74(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'send_wallet_id',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_75(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'invoice',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_76(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'payment_address',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_77(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'payment_amount',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<String> _column_78(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'receive_address',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_79(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'receive_txid',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_80(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'send_txid',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_81(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'preimage',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_82(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'refund_address',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_83(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'refund_txid',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<int> _column_84(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'boltz_fees',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_85(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'lockup_fees',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_86(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'claim_fees',
        aliasedName,
        true,
        type: i1.DriftSqlType.int,
      );
  
  class Shape8 extends i0.VersionedTable {
    Shape8({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<int> get id =>
        columnsByName['id']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<bool> get enabled =>
        columnsByName['enabled']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get balanceThresholdSats =>
        columnsByName['balance_threshold_sats']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<double> get feeThresholdPercent =>
        columnsByName['fee_threshold_percent']! as i1.GeneratedColumn<double>;
    i1.GeneratedColumn<bool> get blockTillNextExecution =>
        columnsByName['block_till_next_execution']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get alwaysBlock =>
        columnsByName['always_block']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<bool> _column_87(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'enabled',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("enabled" IN (0, 1))',
        ),
        defaultValue: const CustomExpression('0'),
      );
  i1.GeneratedColumn<int> _column_88(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'balance_threshold_sats',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<double> _column_89(String aliasedName) =>
      i1.GeneratedColumn<double>(
        'fee_threshold_percent',
        aliasedName,
        false,
        type: i1.DriftSqlType.double,
      );
  i1.GeneratedColumn<bool> _column_90(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'block_till_next_execution',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("block_till_next_execution" IN (0, 1))',
        ),
        defaultValue: const CustomExpression('0'),
      );
  i1.GeneratedColumn<bool> _column_91(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'always_block',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("always_block" IN (0, 1))',
        ),
        defaultValue: const CustomExpression('0'),
      );
  
  final class Schema3 extends i0.VersionedSchema {
    Schema3({required super.database}) : super(version: 3);
    @override
    late final List<i1.DatabaseSchemaEntity> entities = [
      transactions,
      walletMetadatas,
      labels,
      settings,
      payjoinSenders,
      payjoinReceivers,
      electrumServers,
      swaps,
      autoSwap,
      walletAddressHistory,
    ];
    late final Shape0 transactions = Shape0(
      source: i0.VersionedTable(
        entityName: 'transactions',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(txid)'],
        columns: [
          _column_0,
          _column_1,
          _column_2,
          _column_3,
          _column_4,
          _column_5,
          _column_6,
          _column_7,
          _column_8,
          _column_9,
          _column_10,
          _column_11,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape1 walletMetadatas = Shape1(
      source: i0.VersionedTable(
        entityName: 'wallet_metadatas',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_13,
          _column_14,
          _column_15,
          _column_16,
          _column_17,
          _column_18,
          _column_19,
          _column_20,
          _column_21,
          _column_22,
          _column_23,
          _column_24,
          _column_25,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape2 labels = Shape2(
      source: i0.VersionedTable(
        entityName: 'labels',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(label, ref)'],
        columns: [_column_26, _column_27, _column_28, _column_29, _column_30],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape3 settings = Shape3(
      source: i0.VersionedTable(
        entityName: 'settings',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_32,
          _column_33,
          _column_34,
          _column_35,
          _column_36,
          _column_37,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape4 payjoinSenders = Shape4(
      source: i0.VersionedTable(
        entityName: 'payjoin_senders',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(uri)'],
        columns: [
          _column_38,
          _column_39,
          _column_40,
          _column_41,
          _column_42,
          _column_43,
          _column_44,
          _column_45,
          _column_46,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape5 payjoinReceivers = Shape5(
      source: i0.VersionedTable(
        entityName: 'payjoin_receivers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_51,
          _column_39,
          _column_52,
          _column_41,
          _column_53,
          _column_54,
          _column_45,
          _column_46,
          _column_55,
          _column_56,
          _column_57,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape6 electrumServers = Shape6(
      source: i0.VersionedTable(
        entityName: 'electrum_servers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(url)'],
        columns: [
          _column_58,
          _column_59,
          _column_60,
          _column_61,
          _column_62,
          _column_63,
          _column_39,
          _column_64,
          _column_65,
          _column_66,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape7 swaps = Shape7(
      source: i0.VersionedTable(
        entityName: 'swaps',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_67,
          _column_28,
          _column_68,
          _column_69,
          _column_39,
          _column_70,
          _column_71,
          _column_72,
          _column_73,
          _column_74,
          _column_75,
          _column_76,
          _column_77,
          _column_78,
          _column_79,
          _column_80,
          _column_81,
          _column_82,
          _column_83,
          _column_84,
          _column_85,
          _column_86,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape8 autoSwap = Shape8(
      source: i0.VersionedTable(
        entityName: 'auto_swap',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_87,
          _column_88,
          _column_89,
          _column_90,
          _column_91,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape9 walletAddressHistory = Shape9(
      source: i0.VersionedTable(
        entityName: 'wallet_address_history',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_51,
          _column_41,
          _column_92,
          _column_93,
          _column_94,
          _column_95,
          _column_96,
          _column_97,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
  }
  
  class Shape9 extends i0.VersionedTable {
    Shape9({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<int> get id =>
        columnsByName['id']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get address =>
        columnsByName['address']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get walletId =>
        columnsByName['wallet_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get index =>
        columnsByName['index']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<bool> get isChange =>
        columnsByName['is_change']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get balanceSat =>
        columnsByName['balance_sat']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get nrOfTransactions =>
        columnsByName['nr_of_transactions']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<DateTime> get createdAt =>
        columnsByName['created_at']! as i1.GeneratedColumn<DateTime>;
    i1.GeneratedColumn<DateTime> get updatedAt =>
        columnsByName['updated_at']! as i1.GeneratedColumn<DateTime>;
  }
  
  i1.GeneratedColumn<int> _column_92(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'index',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<bool> _column_93(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_change',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_change" IN (0, 1))',
        ),
      );
  i1.GeneratedColumn<int> _column_94(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'balance_sat',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<int> _column_95(String aliasedName) =>
      i1.GeneratedColumn<int>(
        'nr_of_transactions',
        aliasedName,
        false,
        type: i1.DriftSqlType.int,
      );
  i1.GeneratedColumn<DateTime> _column_96(String aliasedName) =>
      i1.GeneratedColumn<DateTime>(
        'created_at',
        aliasedName,
        false,
        type: i1.DriftSqlType.dateTime,
      );
  i1.GeneratedColumn<DateTime> _column_97(String aliasedName) =>
      i1.GeneratedColumn<DateTime>(
        'updated_at',
        aliasedName,
        false,
        type: i1.DriftSqlType.dateTime,
      );
  
  final class Schema4 extends i0.VersionedSchema {
    Schema4({required super.database}) : super(version: 4);
    @override
    late final List<i1.DatabaseSchemaEntity> entities = [
      transactions,
      walletMetadatas,
      labels,
      settings,
      payjoinSenders,
      payjoinReceivers,
      electrumServers,
      swaps,
      autoSwap,
      walletAddresses,
    ];
    late final Shape0 transactions = Shape0(
      source: i0.VersionedTable(
        entityName: 'transactions',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(txid)'],
        columns: [
          _column_0,
          _column_1,
          _column_2,
          _column_3,
          _column_4,
          _column_5,
          _column_6,
          _column_7,
          _column_8,
          _column_9,
          _column_10,
          _column_11,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape10 walletMetadatas = Shape10(
      source: i0.VersionedTable(
        entityName: 'wallet_metadatas',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_13,
          _column_14,
          _column_15,
          _column_16,
          _column_17,
          _column_18,
          _column_19,
          _column_20,
          _column_21,
          _column_98,
          _column_99,
          _column_23,
          _column_24,
          _column_25,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape2 labels = Shape2(
      source: i0.VersionedTable(
        entityName: 'labels',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(label, ref)'],
        columns: [_column_26, _column_27, _column_28, _column_29, _column_30],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape3 settings = Shape3(
      source: i0.VersionedTable(
        entityName: 'settings',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_32,
          _column_33,
          _column_34,
          _column_35,
          _column_36,
          _column_37,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape4 payjoinSenders = Shape4(
      source: i0.VersionedTable(
        entityName: 'payjoin_senders',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(uri)'],
        columns: [
          _column_38,
          _column_39,
          _column_40,
          _column_41,
          _column_42,
          _column_43,
          _column_44,
          _column_45,
          _column_46,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape5 payjoinReceivers = Shape5(
      source: i0.VersionedTable(
        entityName: 'payjoin_receivers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_51,
          _column_39,
          _column_52,
          _column_41,
          _column_53,
          _column_54,
          _column_45,
          _column_46,
          _column_55,
          _column_56,
          _column_57,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape6 electrumServers = Shape6(
      source: i0.VersionedTable(
        entityName: 'electrum_servers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(url)'],
        columns: [
          _column_58,
          _column_59,
          _column_60,
          _column_61,
          _column_62,
          _column_63,
          _column_39,
          _column_64,
          _column_65,
          _column_66,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape7 swaps = Shape7(
      source: i0.VersionedTable(
        entityName: 'swaps',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_67,
          _column_28,
          _column_68,
          _column_69,
          _column_39,
          _column_70,
          _column_71,
          _column_72,
          _column_73,
          _column_74,
          _column_75,
          _column_76,
          _column_77,
          _column_78,
          _column_79,
          _column_80,
          _column_81,
          _column_82,
          _column_83,
          _column_84,
          _column_85,
          _column_86,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape8 autoSwap = Shape8(
      source: i0.VersionedTable(
        entityName: 'auto_swap',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_87,
          _column_88,
          _column_89,
          _column_90,
          _column_91,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape11 walletAddresses = Shape11(
      source: i0.VersionedTable(
        entityName: 'wallet_addresses',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(address)'],
        columns: [
          _column_51,
          _column_41,
          _column_92,
          _column_93,
          _column_94,
          _column_95,
          _column_96,
          _column_97,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
  }
  
  class Shape10 extends i0.VersionedTable {
    Shape10({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get id =>
        columnsByName['id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get masterFingerprint =>
        columnsByName['master_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get xpubFingerprint =>
        columnsByName['xpub_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isEncryptedVaultTested =>
        columnsByName['is_encrypted_vault_tested']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isPhysicalBackupTested =>
        columnsByName['is_physical_backup_tested']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get latestEncryptedBackup =>
        columnsByName['latest_encrypted_backup']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get latestPhysicalBackup =>
        columnsByName['latest_physical_backup']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get xpub =>
        columnsByName['xpub']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get externalPublicDescriptor =>
        columnsByName['external_public_descriptor']!
            as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get internalPublicDescriptor =>
        columnsByName['internal_public_descriptor']!
            as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get signer =>
        columnsByName['signer']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get signerDevice =>
        columnsByName['signer_device']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isDefault =>
        columnsByName['is_default']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<String> get label =>
        columnsByName['label']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<DateTime> get syncedAt =>
        columnsByName['synced_at']! as i1.GeneratedColumn<DateTime>;
  }
  
  i1.GeneratedColumn<String> _column_98(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'signer',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_99(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'signer_device',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  
  class Shape11 extends i0.VersionedTable {
    Shape11({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get address =>
        columnsByName['address']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get walletId =>
        columnsByName['wallet_id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<int> get index =>
        columnsByName['index']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<bool> get isChange =>
        columnsByName['is_change']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get balanceSat =>
        columnsByName['balance_sat']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get nrOfTransactions =>
        columnsByName['nr_of_transactions']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<DateTime> get createdAt =>
        columnsByName['created_at']! as i1.GeneratedColumn<DateTime>;
    i1.GeneratedColumn<DateTime> get updatedAt =>
        columnsByName['updated_at']! as i1.GeneratedColumn<DateTime>;
  }
  
  final class Schema5 extends i0.VersionedSchema {
    Schema5({required super.database}) : super(version: 5);
    @override
    late final List<i1.DatabaseSchemaEntity> entities = [
      transactions,
      walletMetadatas,
      labels,
      settings,
      payjoinSenders,
      payjoinReceivers,
      electrumServers,
      swaps,
      autoSwap,
      walletAddresses,
      bip85Derivations,
    ];
    late final Shape0 transactions = Shape0(
      source: i0.VersionedTable(
        entityName: 'transactions',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(txid)'],
        columns: [
          _column_0,
          _column_1,
          _column_2,
          _column_3,
          _column_4,
          _column_5,
          _column_6,
          _column_7,
          _column_8,
          _column_9,
          _column_10,
          _column_11,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape12 walletMetadatas = Shape12(
      source: i0.VersionedTable(
        entityName: 'wallet_metadatas',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_13,
          _column_14,
          _column_15,
          _column_16,
          _column_17,
          _column_18,
          _column_19,
          _column_20,
          _column_21,
          _column_98,
          _column_99,
          _column_23,
          _column_24,
          _column_25,
          _column_100,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape2 labels = Shape2(
      source: i0.VersionedTable(
        entityName: 'labels',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(label, ref)'],
        columns: [_column_26, _column_27, _column_28, _column_29, _column_30],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape3 settings = Shape3(
      source: i0.VersionedTable(
        entityName: 'settings',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_32,
          _column_33,
          _column_34,
          _column_35,
          _column_36,
          _column_37,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape4 payjoinSenders = Shape4(
      source: i0.VersionedTable(
        entityName: 'payjoin_senders',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(uri)'],
        columns: [
          _column_38,
          _column_39,
          _column_40,
          _column_41,
          _column_42,
          _column_43,
          _column_44,
          _column_45,
          _column_46,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape5 payjoinReceivers = Shape5(
      source: i0.VersionedTable(
        entityName: 'payjoin_receivers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_51,
          _column_39,
          _column_52,
          _column_41,
          _column_53,
          _column_54,
          _column_45,
          _column_46,
          _column_55,
          _column_56,
          _column_57,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape6 electrumServers = Shape6(
      source: i0.VersionedTable(
        entityName: 'electrum_servers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(url)'],
        columns: [
          _column_58,
          _column_59,
          _column_60,
          _column_61,
          _column_62,
          _column_63,
          _column_39,
          _column_64,
          _column_65,
          _column_66,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape7 swaps = Shape7(
      source: i0.VersionedTable(
        entityName: 'swaps',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_67,
          _column_28,
          _column_68,
          _column_69,
          _column_39,
          _column_70,
          _column_71,
          _column_72,
          _column_73,
          _column_74,
          _column_75,
          _column_76,
          _column_77,
          _column_78,
          _column_79,
          _column_80,
          _column_81,
          _column_82,
          _column_83,
          _column_84,
          _column_85,
          _column_86,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape13 autoSwap = Shape13(
      source: i0.VersionedTable(
        entityName: 'auto_swap',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_87,
          _column_88,
          _column_89,
          _column_90,
          _column_91,
          _column_101,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape11 walletAddresses = Shape11(
      source: i0.VersionedTable(
        entityName: 'wallet_addresses',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(address)'],
        columns: [
          _column_51,
          _column_41,
          _column_92,
          _column_93,
          _column_94,
          _column_95,
          _column_96,
          _column_97,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape14 bip85Derivations = Shape14(
      source: i0.VersionedTable(
        entityName: 'bip85_derivations',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(path)'],
        columns: [_column_102, _column_103, _column_104, _column_69, _column_105],
        attachedDatabase: database,
      ),
      alias: null,
    );
  }
  
  class Shape12 extends i0.VersionedTable {
    Shape12({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get id =>
        columnsByName['id']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get masterFingerprint =>
        columnsByName['master_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get xpubFingerprint =>
        columnsByName['xpub_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isEncryptedVaultTested =>
        columnsByName['is_encrypted_vault_tested']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isPhysicalBackupTested =>
        columnsByName['is_physical_backup_tested']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get latestEncryptedBackup =>
        columnsByName['latest_encrypted_backup']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get latestPhysicalBackup =>
        columnsByName['latest_physical_backup']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get xpub =>
        columnsByName['xpub']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get externalPublicDescriptor =>
        columnsByName['external_public_descriptor']!
            as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get internalPublicDescriptor =>
        columnsByName['internal_public_descriptor']!
            as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get signer =>
        columnsByName['signer']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get signerDevice =>
        columnsByName['signer_device']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isDefault =>
        columnsByName['is_default']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<String> get label =>
        columnsByName['label']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<DateTime> get syncedAt =>
        columnsByName['synced_at']! as i1.GeneratedColumn<DateTime>;
    i1.GeneratedColumn<DateTime> get birthday =>
        columnsByName['birthday']! as i1.GeneratedColumn<DateTime>;
  }
  
  i1.GeneratedColumn<DateTime> _column_100(String aliasedName) =>
      i1.GeneratedColumn<DateTime>(
        'birthday',
        aliasedName,
        true,
        type: i1.DriftSqlType.dateTime,
      );
  
  class Shape13 extends i0.VersionedTable {
    Shape13({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<int> get id =>
        columnsByName['id']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<bool> get enabled =>
        columnsByName['enabled']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get balanceThresholdSats =>
        columnsByName['balance_threshold_sats']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<double> get feeThresholdPercent =>
        columnsByName['fee_threshold_percent']! as i1.GeneratedColumn<double>;
    i1.GeneratedColumn<bool> get blockTillNextExecution =>
        columnsByName['block_till_next_execution']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get alwaysBlock =>
        columnsByName['always_block']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<String> get recipientWalletId =>
        columnsByName['recipient_wallet_id']! as i1.GeneratedColumn<String>;
  }
  
  i1.GeneratedColumn<String> _column_101(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'recipient_wallet_id',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  
  class Shape14 extends i0.VersionedTable {
    Shape14({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get path =>
        columnsByName['path']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get xprvFingerprint =>
        columnsByName['xprv_fingerprint']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get application =>
        columnsByName['application']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get status =>
        columnsByName['status']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get alias =>
        columnsByName['alias']! as i1.GeneratedColumn<String>;
  }
  
  i1.GeneratedColumn<String> _column_102(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'path',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_103(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'xprv_fingerprint',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_104(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'application',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i1.GeneratedColumn<String> _column_105(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'alias',
        aliasedName,
        true,
        type: i1.DriftSqlType.string,
      );
  
  final class Schema6 extends i0.VersionedSchema {
    Schema6({required super.database}) : super(version: 6);
    @override
    late final List<i1.DatabaseSchemaEntity> entities = [
      transactions,
      walletMetadatas,
      labels,
      settings,
      payjoinSenders,
      payjoinReceivers,
      electrumServers,
      electrumSettings,
      swaps,
      autoSwap,
      walletAddresses,
      bip85Derivations,
    ];
    late final Shape0 transactions = Shape0(
      source: i0.VersionedTable(
        entityName: 'transactions',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(txid)'],
        columns: [
          _column_0,
          _column_1,
          _column_2,
          _column_3,
          _column_4,
          _column_5,
          _column_6,
          _column_7,
          _column_8,
          _column_9,
          _column_10,
          _column_11,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape12 walletMetadatas = Shape12(
      source: i0.VersionedTable(
        entityName: 'wallet_metadatas',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_13,
          _column_14,
          _column_15,
          _column_16,
          _column_17,
          _column_18,
          _column_19,
          _column_20,
          _column_21,
          _column_98,
          _column_99,
          _column_23,
          _column_24,
          _column_25,
          _column_100,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape2 labels = Shape2(
      source: i0.VersionedTable(
        entityName: 'labels',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(label, ref)'],
        columns: [_column_26, _column_27, _column_28, _column_29, _column_30],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape15 settings = Shape15(
      source: i0.VersionedTable(
        entityName: 'settings',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_32,
          _column_33,
          _column_34,
          _column_35,
          _column_36,
          _column_37,
          _column_106,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape4 payjoinSenders = Shape4(
      source: i0.VersionedTable(
        entityName: 'payjoin_senders',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(uri)'],
        columns: [
          _column_38,
          _column_39,
          _column_40,
          _column_41,
          _column_42,
          _column_43,
          _column_44,
          _column_45,
          _column_46,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape5 payjoinReceivers = Shape5(
      source: i0.VersionedTable(
        entityName: 'payjoin_receivers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_12,
          _column_51,
          _column_39,
          _column_52,
          _column_41,
          _column_53,
          _column_54,
          _column_45,
          _column_46,
          _column_55,
          _column_56,
          _column_57,
          _column_47,
          _column_48,
          _column_49,
          _column_50,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape16 electrumServers = Shape16(
      source: i0.VersionedTable(
        entityName: 'electrum_servers',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(url)'],
        columns: [_column_58, _column_39, _column_64, _column_66, _column_107],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape17 electrumSettings = Shape17(
      source: i0.VersionedTable(
        entityName: 'electrum_settings',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(network)'],
        columns: [
          _column_108,
          _column_63,
          _column_60,
          _column_61,
          _column_62,
          _column_59,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape7 swaps = Shape7(
      source: i0.VersionedTable(
        entityName: 'swaps',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(id)'],
        columns: [
          _column_67,
          _column_28,
          _column_68,
          _column_69,
          _column_39,
          _column_70,
          _column_71,
          _column_72,
          _column_73,
          _column_74,
          _column_75,
          _column_76,
          _column_77,
          _column_78,
          _column_79,
          _column_80,
          _column_81,
          _column_82,
          _column_83,
          _column_84,
          _column_85,
          _column_86,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape13 autoSwap = Shape13(
      source: i0.VersionedTable(
        entityName: 'auto_swap',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: [],
        columns: [
          _column_31,
          _column_87,
          _column_88,
          _column_89,
          _column_90,
          _column_91,
          _column_101,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape11 walletAddresses = Shape11(
      source: i0.VersionedTable(
        entityName: 'wallet_addresses',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(address)'],
        columns: [
          _column_51,
          _column_41,
          _column_92,
          _column_93,
          _column_94,
          _column_95,
          _column_96,
          _column_97,
        ],
        attachedDatabase: database,
      ),
      alias: null,
    );
    late final Shape14 bip85Derivations = Shape14(
      source: i0.VersionedTable(
        entityName: 'bip85_derivations',
        withoutRowId: false,
        isStrict: false,
        tableConstraints: ['PRIMARY KEY(path)'],
        columns: [_column_102, _column_103, _column_104, _column_69, _column_105],
        attachedDatabase: database,
      ),
      alias: null,
    );
  }
  
  class Shape15 extends i0.VersionedTable {
    Shape15({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<int> get id =>
        columnsByName['id']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get environment =>
        columnsByName['environment']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get bitcoinUnit =>
        columnsByName['bitcoin_unit']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get language =>
        columnsByName['language']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<String> get currency =>
        columnsByName['currency']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get hideAmounts =>
        columnsByName['hide_amounts']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isSuperuser =>
        columnsByName['is_superuser']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isDevModeEnabled =>
        columnsByName['is_dev_mode_enabled']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<bool> _column_106(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_dev_mode_enabled',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_dev_mode_enabled" IN (0, 1))',
        ),
        defaultValue: const CustomExpression('0'),
      );
  
  class Shape16 extends i0.VersionedTable {
    Shape16({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get url =>
        columnsByName['url']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get isTestnet =>
        columnsByName['is_testnet']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<bool> get isLiquid =>
        columnsByName['is_liquid']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get priority =>
        columnsByName['priority']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<bool> get isCustom =>
        columnsByName['is_custom']! as i1.GeneratedColumn<bool>;
  }
  
  i1.GeneratedColumn<bool> _column_107(String aliasedName) =>
      i1.GeneratedColumn<bool>(
        'is_custom',
        aliasedName,
        false,
        type: i1.DriftSqlType.bool,
        defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
          'CHECK ("is_custom" IN (0, 1))',
        ),
        defaultValue: const CustomExpression('0'),
      );
  
  class Shape17 extends i0.VersionedTable {
    Shape17({required super.source, required super.alias}) : super.aliased();
    i1.GeneratedColumn<String> get network =>
        columnsByName['network']! as i1.GeneratedColumn<String>;
    i1.GeneratedColumn<bool> get validateDomain =>
        columnsByName['validate_domain']! as i1.GeneratedColumn<bool>;
    i1.GeneratedColumn<int> get stopGap =>
        columnsByName['stop_gap']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get timeout =>
        columnsByName['timeout']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<int> get retry =>
        columnsByName['retry']! as i1.GeneratedColumn<int>;
    i1.GeneratedColumn<String> get socks5 =>
        columnsByName['socks5']! as i1.GeneratedColumn<String>;
  }
  
  i1.GeneratedColumn<String> _column_108(String aliasedName) =>
      i1.GeneratedColumn<String>(
        'network',
        aliasedName,
        false,
        type: i1.DriftSqlType.string,
      );
  i0.MigrationStepWithVersion migrationSteps({
    required Future<void> Function(i1.Migrator m, Schema2 schema) from1To2,
    required Future<void> Function(i1.Migrator m, Schema3 schema) from2To3,
    required Future<void> Function(i1.Migrator m, Schema4 schema) from3To4,
    required Future<void> Function(i1.Migrator m, Schema5 schema) from4To5,
    required Future<void> Function(i1.Migrator m, Schema6 schema) from5To6,
  }) {
    return (currentVersion, database) async {
      switch (currentVersion) {
        case 1:
          final schema = Schema2(database: database);
          final migrator = i1.Migrator(database, schema);
          await from1To2(migrator, schema);
          return 2;
        case 2:
          final schema = Schema3(database: database);
          final migrator = i1.Migrator(database, schema);
          await from2To3(migrator, schema);
          return 3;
        case 3:
          final schema = Schema4(database: database);
          final migrator = i1.Migrator(database, schema);
          await from3To4(migrator, schema);
          return 4;
        case 4:
          final schema = Schema5(database: database);
          final migrator = i1.Migrator(database, schema);
          await from4To5(migrator, schema);
          return 5;
        case 5:
          final schema = Schema6(database: database);
          final migrator = i1.Migrator(database, schema);
          await from5To6(migrator, schema);
          return 6;
        default:
          throw ArgumentError.value('Unknown migration from $currentVersion');
      }
    };
  }
  
  i1.OnUpgrade stepByStep({
    required Future<void> Function(i1.Migrator m, Schema2 schema) from1To2,
    required Future<void> Function(i1.Migrator m, Schema3 schema) from2To3,
    required Future<void> Function(i1.Migrator m, Schema4 schema) from3To4,
    required Future<void> Function(i1.Migrator m, Schema5 schema) from4To5,
    required Future<void> Function(i1.Migrator m, Schema6 schema) from5To6,
  }) => i0.VersionedSchema.stepByStepHelper(
    step: migrationSteps(
      from1To2: from1To2,
      from2To3: from2To3,
      from3To4: from3To4,
      from4To5: from4To5,
      from5To6: from5To6,
    ),
  );
  