"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `userId` TEXT, `username` TEXT, `baseUrl` TEXT, `token` TEXT, `displayName` TEXT, `pushConfigurationState` TEXT, `capabilities` TEXT, `serverVersion` TEXT DEFAULT '', `clientCertificate` TEXT, `externalSignalingServer` TEXT, `current` INTEGER NOT NULL, `scheduledForDeletion` INTEGER NOT NULL)",
"fields":[
{
"fieldPath":"id",
"columnName":"id",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"userId",
"columnName":"userId",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"username",
"columnName":"username",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"baseUrl",
"columnName":"baseUrl",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"token",
"columnName":"token",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"displayName",
"columnName":"displayName",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"pushConfigurationState",
"columnName":"pushConfigurationState",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"capabilities",
"columnName":"capabilities",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"serverVersion",
"columnName":"serverVersion",
"affinity":"TEXT",
"notNull":false,
"defaultValue":"''"
},
{
"fieldPath":"clientCertificate",
"columnName":"clientCertificate",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"externalSignalingServer",
"columnName":"externalSignalingServer",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"current",
"columnName":"current",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"scheduledForDeletion",
"columnName":"scheduledForDeletion",
"affinity":"INTEGER",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":true,
"columnNames":[
"id"
]
},
"indices":[],
"foreignKeys":[]
},
{
"tableName":"ArbitraryStorage",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`accountIdentifier` INTEGER NOT NULL, `key` TEXT NOT NULL, `object` TEXT, `value` TEXT, PRIMARY KEY(`accountIdentifier`, `key`))",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`internalId` TEXT NOT NULL, `accountId` INTEGER NOT NULL, `token` TEXT NOT NULL, `displayName` TEXT NOT NULL, `actorId` TEXT NOT NULL, `actorType` TEXT NOT NULL, `avatarVersion` TEXT NOT NULL, `callFlag` INTEGER NOT NULL, `callRecording` INTEGER NOT NULL, `callStartTime` INTEGER NOT NULL, `canDeleteConversation` INTEGER NOT NULL, `canLeaveConversation` INTEGER NOT NULL, `canStartCall` INTEGER NOT NULL, `description` TEXT NOT NULL, `hasCall` INTEGER NOT NULL, `hasPassword` INTEGER NOT NULL, `isCustomAvatar` INTEGER NOT NULL, `isFavorite` INTEGER NOT NULL, `lastActivity` INTEGER NOT NULL, `lastCommonReadMessage` INTEGER NOT NULL, `lastMessage` TEXT, `lastPing` INTEGER NOT NULL, `lastReadMessage` INTEGER NOT NULL, `lobbyState` TEXT NOT NULL, `lobbyTimer` INTEGER NOT NULL, `messageExpiration` INTEGER NOT NULL, `name` TEXT NOT NULL, `notificationCalls` INTEGER NOT NULL, `notificationLevel` TEXT NOT NULL, `objectType` TEXT NOT NULL, `participantType` TEXT NOT NULL, `permissions` INTEGER NOT NULL, `readOnly` TEXT NOT NULL, `recordingConsent` INTEGER NOT NULL, `remoteServer` TEXT, `remoteToken` TEXT, `sessionId` TEXT NOT NULL, `status` TEXT, `statusClearAt` INTEGER, `statusIcon` TEXT, `statusMessage` TEXT, `type` TEXT NOT NULL, `unreadMention` INTEGER NOT NULL, `unreadMentionDirect` INTEGER NOT NULL, `unreadMessages` INTEGER NOT NULL, `hasArchived` INTEGER NOT NULL, PRIMARY KEY(`internalId`), FOREIGN KEY(`accountId`) REFERENCES `User`(`id`) ON UPDATE CASCADE ON DELETE CASCADE )",
"createSql":"CREATE INDEX IF NOT EXISTS `index_Conversations_accountId` ON `${TABLE_NAME}` (`accountId`)"
}
],
"foreignKeys":[
{
"table":"User",
"onDelete":"CASCADE",
"onUpdate":"CASCADE",
"columns":[
"accountId"
],
"referencedColumns":[
"id"
]
}
]
},
{
"tableName":"ChatMessages",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`internalId` TEXT NOT NULL, `accountId` INTEGER NOT NULL, `token` TEXT NOT NULL, `id` INTEGER NOT NULL, `internalConversationId` TEXT NOT NULL, `actorDisplayName` TEXT NOT NULL, `message` TEXT NOT NULL, `actorId` TEXT NOT NULL, `actorType` TEXT NOT NULL, `deleted` INTEGER NOT NULL, `expirationTimestamp` INTEGER NOT NULL, `isReplyable` INTEGER NOT NULL, `lastEditActorDisplayName` TEXT, `lastEditActorId` TEXT, `lastEditActorType` TEXT, `lastEditTimestamp` INTEGER, `markdown` INTEGER, `messageParameters` TEXT, `messageType` TEXT NOT NULL, `parent` INTEGER, `reactions` TEXT, `reactionsSelf` TEXT, `systemMessage` TEXT NOT NULL, `timestamp` INTEGER NOT NULL, PRIMARY KEY(`internalId`), FOREIGN KEY(`internalConversationId`) REFERENCES `Conversations`(`internalId`) ON UPDATE CASCADE ON DELETE CASCADE )",
"fields":[
{
"fieldPath":"internalId",
"columnName":"internalId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"accountId",
"columnName":"accountId",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"token",
"columnName":"token",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"id",
"columnName":"id",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"internalConversationId",
"columnName":"internalConversationId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"actorDisplayName",
"columnName":"actorDisplayName",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"message",
"columnName":"message",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"actorId",
"columnName":"actorId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"actorType",
"columnName":"actorType",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"deleted",
"columnName":"deleted",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"expirationTimestamp",
"columnName":"expirationTimestamp",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"replyable",
"columnName":"isReplyable",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"lastEditActorDisplayName",
"columnName":"lastEditActorDisplayName",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"lastEditActorId",
"columnName":"lastEditActorId",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"lastEditActorType",
"columnName":"lastEditActorType",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"lastEditTimestamp",
"columnName":"lastEditTimestamp",
"affinity":"INTEGER",
"notNull":false
},
{
"fieldPath":"renderMarkdown",
"columnName":"markdown",
"affinity":"INTEGER",
"notNull":false
},
{
"fieldPath":"messageParameters",
"columnName":"messageParameters",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"messageType",
"columnName":"messageType",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"parentMessageId",
"columnName":"parent",
"affinity":"INTEGER",
"notNull":false
},
{
"fieldPath":"reactions",
"columnName":"reactions",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"reactionsSelf",
"columnName":"reactionsSelf",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"systemMessageType",
"columnName":"systemMessage",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"timestamp",
"columnName":"timestamp",
"affinity":"INTEGER",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":false,
"columnNames":[
"internalId"
]
},
"indices":[
{
"name":"index_ChatMessages_internalId",
"unique":true,
"columnNames":[
"internalId"
],
"orders":[],
"createSql":"CREATE UNIQUE INDEX IF NOT EXISTS `index_ChatMessages_internalId` ON `${TABLE_NAME}` (`internalId`)"
"createSql":"CREATE INDEX IF NOT EXISTS `index_ChatMessages_internalConversationId` ON `${TABLE_NAME}` (`internalConversationId`)"
}
],
"foreignKeys":[
{
"table":"Conversations",
"onDelete":"CASCADE",
"onUpdate":"CASCADE",
"columns":[
"internalConversationId"
],
"referencedColumns":[
"internalId"
]
}
]
},
{
"tableName":"ChatBlocks",
"createSql":"CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `internalConversationId` TEXT NOT NULL, `accountId` INTEGER, `token` TEXT, `oldestMessageId` INTEGER NOT NULL, `newestMessageId` INTEGER NOT NULL, `hasHistory` INTEGER NOT NULL, FOREIGN KEY(`internalConversationId`) REFERENCES `Conversations`(`internalId`) ON UPDATE CASCADE ON DELETE CASCADE )",
"fields":[
{
"fieldPath":"id",
"columnName":"id",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"internalConversationId",
"columnName":"internalConversationId",
"affinity":"TEXT",
"notNull":true
},
{
"fieldPath":"accountId",
"columnName":"accountId",
"affinity":"INTEGER",
"notNull":false
},
{
"fieldPath":"token",
"columnName":"token",
"affinity":"TEXT",
"notNull":false
},
{
"fieldPath":"oldestMessageId",
"columnName":"oldestMessageId",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"newestMessageId",
"columnName":"newestMessageId",
"affinity":"INTEGER",
"notNull":true
},
{
"fieldPath":"hasHistory",
"columnName":"hasHistory",
"affinity":"INTEGER",
"notNull":true
}
],
"primaryKey":{
"autoGenerate":true,
"columnNames":[
"id"
]
},
"indices":[
{
"name":"index_ChatBlocks_internalConversationId",
"unique":false,
"columnNames":[
"internalConversationId"
],
"orders":[],
"createSql":"CREATE INDEX IF NOT EXISTS `index_ChatBlocks_internalConversationId` ON `${TABLE_NAME}` (`internalConversationId`)"
}
],
"foreignKeys":[
{
"table":"Conversations",
"onDelete":"CASCADE",
"onUpdate":"CASCADE",
"columns":[
"internalConversationId"
],
"referencedColumns":[
"internalId"
]
}
]
}
],
"views":[],
"setupQueries":[
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",