"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`videoId` TEXT NOT NULL, `title` TEXT, `uploadDate` TEXT, `uploader` TEXT, `uploaderUrl` TEXT, `uploaderAvatar` TEXT, `thumbnailUrl` TEXT, `duration` INTEGER, PRIMARY KEY(`videoId`))",
"fields":[
{
"fieldPath":"videoId",
"columnName":"videoId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"title",
"columnName":"title",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploadDate",
"columnName":"uploadDate",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploader",
"columnName":"uploader",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploaderUrl",
"columnName":"uploaderUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploaderAvatar",
"columnName":"uploaderAvatar",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"thumbnailUrl",
"columnName":"thumbnailUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"duration",
"columnName":"duration",
"affinity":"INTEGER",
"notNull":false
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"videoId"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"watchPosition",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`videoId` TEXT NOT NULL, `position` INTEGER NOT NULL, PRIMARY KEY(`videoId`))",
"fields":[
{
"fieldPath":"videoId",
"columnName":"videoId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"position",
"columnName":"position",
"affinity":"INTEGER",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"videoId"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"searchHistoryItem",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`query` TEXT NOT NULL, PRIMARY KEY(`query`))",
"fields":[
{
"fieldPath":"query",
"columnName":"query",
"affinity":"TEXT",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"query"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"customInstance",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`name` TEXT NOT NULL, `apiUrl` TEXT NOT NULL, `frontendUrl` TEXT NOT NULL, PRIMARY KEY(`name`))",
"fields":[
{
"fieldPath":"name",
"columnName":"name",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"apiUrl",
"columnName":"apiUrl",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"frontendUrl",
"columnName":"frontendUrl",
"affinity":"TEXT",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"name"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"localSubscription",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`channelId` TEXT NOT NULL, PRIMARY KEY(`channelId`))",
"fields":[
{
"fieldPath":"channelId",
"columnName":"channelId",
"affinity":"TEXT",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"channelId"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"playlistBookmark",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`playlistId` TEXT NOT NULL, `playlistName` TEXT, `thumbnailUrl` TEXT, `uploader` TEXT, `uploaderUrl` TEXT, `uploaderAvatar` TEXT, `videos` INTEGER NOT NULL, PRIMARY KEY(`playlistId`))",
"fields":[
{
"fieldPath":"playlistId",
"columnName":"playlistId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"playlistName",
"columnName":"playlistName",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"thumbnailUrl",
"columnName":"thumbnailUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploader",
"columnName":"uploader",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploaderUrl",
"columnName":"uploaderUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploaderAvatar",
"columnName":"uploaderAvatar",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"videos",
"columnName":"videos",
"affinity":"INTEGER",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"playlistId"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"LocalPlaylist",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `name` TEXT NOT NULL, `thumbnailUrl` TEXT NOT NULL, `description` TEXT)",
"fields":[
{
"fieldPath":"id",
"columnName":"id",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"name",
"columnName":"name",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"thumbnailUrl",
"columnName":"thumbnailUrl",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"description",
"columnName":"description",
"affinity":"TEXT",
"notNull":false
}
],
"primaryKey":{
"autoGenerate":true,
"columnNames":[
"id"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"LocalPlaylistItem",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `playlistId` INTEGER NOT NULL, `videoId` TEXT NOT NULL, `title` TEXT, `uploadDate` TEXT, `uploader` TEXT, `uploaderUrl` TEXT, `uploaderAvatar` TEXT, `thumbnailUrl` TEXT, `duration` INTEGER)",
"fields":[
{
"fieldPath":"id",
"columnName":"id",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"playlistId",
"columnName":"playlistId",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"videoId",
"columnName":"videoId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"title",
"columnName":"title",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploadDate",
"columnName":"uploadDate",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploader",
"columnName":"uploader",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploaderUrl",
"columnName":"uploaderUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"uploaderAvatar",
"columnName":"uploaderAvatar",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"thumbnailUrl",
"columnName":"thumbnailUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"duration",
"columnName":"duration",
"affinity":"INTEGER",
"notNull":false
}
],
"primaryKey":{
"autoGenerate":true,
"columnNames":[
"id"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"download",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`videoId` TEXT NOT NULL, `title` TEXT NOT NULL, `description` TEXT NOT NULL, `uploader` TEXT NOT NULL, `uploadDate` TEXT, `thumbnailPath` TEXT, PRIMARY KEY(`videoId`))",
"fields":[
{
"fieldPath":"videoId",
"columnName":"videoId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"title",
"columnName":"title",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"description",
"columnName":"description",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"uploader",
"columnName":"uploader",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"uploadDate",
"columnName":"uploadDate",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"thumbnailPath",
"columnName":"thumbnailPath",
"affinity":"TEXT",
"notNull":false
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"videoId"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"downloadItem",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `type` TEXT NOT NULL, `videoId` TEXT NOT NULL, `fileName` TEXT NOT NULL, `path` TEXT NOT NULL, `url` TEXT, `format` TEXT, `quality` TEXT, `downloadSize` INTEGER NOT NULL, FOREIGN KEY(`videoId`) REFERENCES `download`(`videoId`) ON UPDATE NO ACTION ON DELETE CASCADE )",
"fields":[
{
"fieldPath":"id",
"columnName":"id",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"type",
"columnName":"type",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"videoId",
"columnName":"videoId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"fileName",
"columnName":"fileName",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"path",
"columnName":"path",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"url",
"columnName":"url",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"format",
"columnName":"format",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"quality",
"columnName":"quality",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"downloadSize",
"columnName":"downloadSize",
"affinity":"INTEGER",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":true,
"columnNames":[
"id"
]
},
"indices":[
{
"name":"index_downloadItem_path",
"unique":true,
"columnNames":[
"path"
],
"orders":[],
"createSql":"CREATE UNIQUE INDEX IF NOT EXISTS `index_downloadItem_path` ON `${TABLE_NAME}` (`path`)"