{
  "formatVersion": 1,
  "database": {
    "version": 3,
    "identityHash": "89afbb8be843e0be5b5b230903b23416",
    "entities": [
      {
        "tableName": "id_bridge",
        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`tmdbId` INTEGER NOT NULL, `imdbId` TEXT NOT NULL, `tmdbPrefixed` TEXT, `tmdbUnderscored` TEXT, `mediaType` TEXT NOT NULL, `lastUpdated` INTEGER NOT NULL, PRIMARY KEY(`tmdbId`))",
        "fields": [
          {
            "fieldPath": "tmdbId",
            "columnName": "tmdbId",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "imdbId",
            "columnName": "imdbId",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "tmdbPrefixed",
            "columnName": "tmdbPrefixed",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "tmdbUnderscored",
            "columnName": "tmdbUnderscored",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "mediaType",
            "columnName": "mediaType",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "lastUpdated",
            "columnName": "lastUpdated",
            "affinity": "INTEGER",
            "notNull": true
          }
        ],
        "primaryKey": {
          "autoGenerate": false,
          "columnNames": [
            "tmdbId"
          ]
        },
        "indices": [],
        "foreignKeys": []
      },
      {
        "tableName": "watch_progress",
        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `profileId` INTEGER NOT NULL, `mediaId` TEXT NOT NULL, `mediaType` TEXT NOT NULL, `progressSeconds` INTEGER NOT NULL, `durationSeconds` INTEGER NOT NULL, `progressPercent` REAL NOT NULL, `isWatched` INTEGER NOT NULL, `lastPlayedAt` INTEGER NOT NULL, `traktSynced` INTEGER NOT NULL)",
        "fields": [
          {
            "fieldPath": "id",
            "columnName": "id",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "profileId",
            "columnName": "profileId",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "mediaId",
            "columnName": "mediaId",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "mediaType",
            "columnName": "mediaType",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "progressSeconds",
            "columnName": "progressSeconds",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "durationSeconds",
            "columnName": "durationSeconds",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "progressPercent",
            "columnName": "progressPercent",
            "affinity": "REAL",
            "notNull": true
          },
          {
            "fieldPath": "isWatched",
            "columnName": "isWatched",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "lastPlayedAt",
            "columnName": "lastPlayedAt",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "traktSynced",
            "columnName": "traktSynced",
            "affinity": "INTEGER",
            "notNull": true
          }
        ],
        "primaryKey": {
          "autoGenerate": true,
          "columnNames": [
            "id"
          ]
        },
        "indices": [
          {
            "name": "index_watch_progress_profileId_mediaId",
            "unique": true,
            "columnNames": [
              "profileId",
              "mediaId"
            ],
            "orders": [],
            "createSql": "CREATE UNIQUE INDEX IF NOT EXISTS `index_watch_progress_profileId_mediaId` ON `${TABLE_NAME}` (`profileId`, `mediaId`)"
          },
          {
            "name": "index_watch_progress_profileId_isWatched_lastPlayedAt",
            "unique": false,
            "columnNames": [
              "profileId",
              "isWatched",
              "lastPlayedAt"
            ],
            "orders": [],
            "createSql": "CREATE INDEX IF NOT EXISTS `index_watch_progress_profileId_isWatched_lastPlayedAt` ON `${TABLE_NAME}` (`profileId`, `isWatched`, `lastPlayedAt`)"
          }
        ],
        "foreignKeys": []
      },
      {
        "tableName": "watchlist",
        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `profileId` INTEGER NOT NULL, `mediaId` TEXT NOT NULL, `mediaType` TEXT NOT NULL, `title` TEXT NOT NULL, `posterUrl` TEXT, `addedAt` INTEGER NOT NULL, `traktListId` TEXT)",
        "fields": [
          {
            "fieldPath": "id",
            "columnName": "id",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "profileId",
            "columnName": "profileId",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "mediaId",
            "columnName": "mediaId",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "mediaType",
            "columnName": "mediaType",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "title",
            "columnName": "title",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "posterUrl",
            "columnName": "posterUrl",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "addedAt",
            "columnName": "addedAt",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "traktListId",
            "columnName": "traktListId",
            "affinity": "TEXT",
            "notNull": false
          }
        ],
        "primaryKey": {
          "autoGenerate": true,
          "columnNames": [
            "id"
          ]
        },
        "indices": [
          {
            "name": "index_watchlist_profileId_mediaId",
            "unique": true,
            "columnNames": [
              "profileId",
              "mediaId"
            ],
            "orders": [],
            "createSql": "CREATE UNIQUE INDEX IF NOT EXISTS `index_watchlist_profileId_mediaId` ON `${TABLE_NAME}` (`profileId`, `mediaId`)"
          },
          {
            "name": "index_watchlist_profileId_addedAt",
            "unique": false,
            "columnNames": [
              "profileId",
              "addedAt"
            ],
            "orders": [],
            "createSql": "CREATE INDEX IF NOT EXISTS `index_watchlist_profileId_addedAt` ON `${TABLE_NAME}` (`profileId`, `addedAt`)"
          }
        ],
        "foreignKeys": []
      },
      {
        "tableName": "addons",
        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`addonId` TEXT NOT NULL, `manifestUrl` TEXT NOT NULL, `name` TEXT NOT NULL, `version` TEXT NOT NULL, `isSystem` INTEGER NOT NULL, `isEnabled` INTEGER NOT NULL, `isVerified` INTEGER NOT NULL, `priority` INTEGER NOT NULL, `installedAt` INTEGER NOT NULL, PRIMARY KEY(`addonId`))",
        "fields": [
          {
            "fieldPath": "addonId",
            "columnName": "addonId",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "manifestUrl",
            "columnName": "manifestUrl",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "name",
            "columnName": "name",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "version",
            "columnName": "version",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "isSystem",
            "columnName": "isSystem",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "isEnabled",
            "columnName": "isEnabled",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "isVerified",
            "columnName": "isVerified",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "priority",
            "columnName": "priority",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "installedAt",
            "columnName": "installedAt",
            "affinity": "INTEGER",
            "notNull": true
          }
        ],
        "primaryKey": {
          "autoGenerate": false,
          "columnNames": [
            "addonId"
          ]
        },
        "indices": [],
        "foreignKeys": []
      },
      {
        "tableName": "profiles",
        "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `name` TEXT NOT NULL, `avatar` TEXT NOT NULL, `isKidsProfile` INTEGER NOT NULL, `pinHash` TEXT, `pinSalt` TEXT, `traktLinked` INTEGER NOT NULL, `traktUsername` TEXT, `contentRating` TEXT NOT NULL, `dailyWatchLimit` INTEGER NOT NULL, `bedtimeCutoff` TEXT, `createdAt` INTEGER NOT NULL)",
        "fields": [
          {
            "fieldPath": "id",
            "columnName": "id",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "name",
            "columnName": "name",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "avatar",
            "columnName": "avatar",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "isKidsProfile",
            "columnName": "isKidsProfile",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "pinHash",
            "columnName": "pinHash",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "pinSalt",
            "columnName": "pinSalt",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "traktLinked",
            "columnName": "traktLinked",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "traktUsername",
            "columnName": "traktUsername",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "contentRating",
            "columnName": "contentRating",
            "affinity": "TEXT",
            "notNull": true
          },
          {
            "fieldPath": "dailyWatchLimit",
            "columnName": "dailyWatchLimit",
            "affinity": "INTEGER",
            "notNull": true
          },
          {
            "fieldPath": "bedtimeCutoff",
            "columnName": "bedtimeCutoff",
            "affinity": "TEXT",
            "notNull": false
          },
          {
            "fieldPath": "createdAt",
            "columnName": "createdAt",
            "affinity": "INTEGER",
            "notNull": true
          }
        ],
        "primaryKey": {
          "autoGenerate": true,
          "columnNames": [
            "id"
          ]
        },
        "indices": [],
        "foreignKeys": []
      }
    ],
    "views": [],
    "setupQueries": [
      "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
      "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '89afbb8be843e0be5b5b230903b23416')"
    ]
  }
}