{
  "_meta": {
    "description": "This file contains a serialized version of schema entities for drift.",
    "version": "1.3.0"
  },
  "options": {
    "store_date_time_values_as_text": true
  },
  "entities": [
    {
      "id": 0,
      "references": [],
      "type": "table",
      "data": {
        "name": "user_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "email",
            "getter_name": "email",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "has_profile_image",
            "getter_name": "hasProfileImage",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"has_profile_image\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"has_profile_image\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "profile_changed_at",
            "getter_name": "profileChangedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "avatar_color",
            "getter_name": "avatarColor",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AvatarColor>(AvatarColor.values)",
              "dart_type_name": "AvatarColor"
            }
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 1,
      "references": [
        0
      ],
      "type": "table",
      "data": {
        "name": "remote_asset_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "type",
            "getter_name": "type",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetType>(AssetType.values)",
              "dart_type_name": "AssetType"
            }
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "width",
            "getter_name": "width",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "height",
            "getter_name": "height",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "duration_ms",
            "getter_name": "durationMs",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "checksum",
            "getter_name": "checksum",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_favorite",
            "getter_name": "isFavorite",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_favorite\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_favorite\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "owner_id",
            "getter_name": "ownerId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "local_date_time",
            "getter_name": "localDateTime",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "thumb_hash",
            "getter_name": "thumbHash",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "deleted_at",
            "getter_name": "deletedAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "uploaded_at",
            "getter_name": "uploadedAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "live_photo_video_id",
            "getter_name": "livePhotoVideoId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "visibility",
            "getter_name": "visibility",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetVisibility>(AssetVisibility.values)",
              "dart_type_name": "AssetVisibility"
            }
          },
          {
            "name": "stack_id",
            "getter_name": "stackId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "library_id",
            "getter_name": "libraryId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_edited",
            "getter_name": "isEdited",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_edited\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_edited\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 2,
      "references": [
        0
      ],
      "type": "table",
      "data": {
        "name": "stack_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "owner_id",
            "getter_name": "ownerId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "primary_asset_id",
            "getter_name": "primaryAssetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 3,
      "references": [],
      "type": "table",
      "data": {
        "name": "local_asset_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "type",
            "getter_name": "type",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetType>(AssetType.values)",
              "dart_type_name": "AssetType"
            }
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "width",
            "getter_name": "width",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "height",
            "getter_name": "height",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "duration_ms",
            "getter_name": "durationMs",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "checksum",
            "getter_name": "checksum",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_favorite",
            "getter_name": "isFavorite",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_favorite\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_favorite\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "orientation",
            "getter_name": "orientation",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "i_cloud_id",
            "getter_name": "iCloudId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "adjustment_time",
            "getter_name": "adjustmentTime",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "latitude",
            "getter_name": "latitude",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "longitude",
            "getter_name": "longitude",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "playback_style",
            "getter_name": "playbackStyle",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetPlaybackStyle>(AssetPlaybackStyle.values)",
              "dart_type_name": "AssetPlaybackStyle"
            }
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 4,
      "references": [
        1
      ],
      "type": "table",
      "data": {
        "name": "remote_album_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "description",
            "getter_name": "description",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('\\'\\'')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "thumbnail_asset_id",
            "getter_name": "thumbnailAssetId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE SET NULL",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE SET NULL"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "setNull"
                }
              }
            ]
          },
          {
            "name": "is_activity_enabled",
            "getter_name": "isActivityEnabled",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_activity_enabled\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_activity_enabled\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('1')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "order",
            "getter_name": "order",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AlbumAssetOrder>(AlbumAssetOrder.values)",
              "dart_type_name": "AlbumAssetOrder"
            }
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 5,
      "references": [
        4
      ],
      "type": "table",
      "data": {
        "name": "local_album_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "backup_selection",
            "getter_name": "backupSelection",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<BackupSelection>(BackupSelection.values)",
              "dart_type_name": "BackupSelection"
            }
          },
          {
            "name": "is_ios_shared_album",
            "getter_name": "isIosSharedAlbum",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_ios_shared_album\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_ios_shared_album\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "linked_remote_album_id",
            "getter_name": "linkedRemoteAlbumId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_album_entity (id) ON DELETE SET NULL",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_album_entity (id) ON DELETE SET NULL"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_album_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "setNull"
                }
              }
            ]
          },
          {
            "name": "marker",
            "getter_name": "marker_",
            "moor_type": "bool",
            "nullable": true,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"marker\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"marker\" IN (0, 1))"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 6,
      "references": [
        3,
        5
      ],
      "type": "table",
      "data": {
        "name": "local_album_asset_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES local_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES local_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "local_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "album_id",
            "getter_name": "albumId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES local_album_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES local_album_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "local_album_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "marker",
            "getter_name": "marker_",
            "moor_type": "bool",
            "nullable": true,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"marker\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"marker\" IN (0, 1))"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "asset_id",
          "album_id"
        ]
      }
    },
    {
      "id": 7,
      "references": [
        6
      ],
      "type": "index",
      "data": {
        "on": 6,
        "name": "idx_local_album_asset_album_asset",
        "sql": "CREATE INDEX IF NOT EXISTS idx_local_album_asset_album_asset ON local_album_asset_entity (album_id, asset_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 8,
      "references": [
        3
      ],
      "type": "index",
      "data": {
        "on": 3,
        "name": "idx_local_asset_checksum",
        "sql": "CREATE INDEX IF NOT EXISTS idx_local_asset_checksum ON local_asset_entity (checksum)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 9,
      "references": [
        3
      ],
      "type": "index",
      "data": {
        "on": 3,
        "name": "idx_local_asset_cloud_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_local_asset_cloud_id ON local_asset_entity (i_cloud_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 10,
      "references": [
        3
      ],
      "type": "index",
      "data": {
        "on": 3,
        "name": "idx_local_asset_created_at",
        "sql": "CREATE INDEX IF NOT EXISTS idx_local_asset_created_at ON local_asset_entity (created_at)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 11,
      "references": [
        2
      ],
      "type": "index",
      "data": {
        "on": 2,
        "name": "idx_stack_primary_asset_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_stack_primary_asset_id ON stack_entity (primary_asset_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 12,
      "references": [
        1
      ],
      "type": "index",
      "data": {
        "on": 1,
        "name": "UQ_remote_assets_owner_checksum",
        "sql": "CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_checksum\nON remote_asset_entity (owner_id, checksum)\nWHERE (library_id IS NULL);\n",
        "unique": true,
        "columns": []
      }
    },
    {
      "id": 13,
      "references": [
        1
      ],
      "type": "index",
      "data": {
        "on": 1,
        "name": "UQ_remote_assets_owner_library_checksum",
        "sql": "CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_library_checksum\nON remote_asset_entity (owner_id, library_id, checksum)\nWHERE (library_id IS NOT NULL);\n",
        "unique": true,
        "columns": []
      }
    },
    {
      "id": 14,
      "references": [
        1
      ],
      "type": "index",
      "data": {
        "on": 1,
        "name": "idx_remote_asset_checksum",
        "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_checksum ON remote_asset_entity (checksum)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 15,
      "references": [
        1
      ],
      "type": "index",
      "data": {
        "on": 1,
        "name": "idx_remote_asset_stack_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_stack_id ON remote_asset_entity (stack_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 16,
      "references": [
        1
      ],
      "type": "index",
      "data": {
        "on": 1,
        "name": "idx_remote_asset_owner_visibility_deleted_created",
        "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_owner_visibility_deleted_created\nON remote_asset_entity (owner_id, visibility, deleted_at, created_at DESC)\n",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 17,
      "references": [],
      "type": "table",
      "data": {
        "name": "auth_user_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "email",
            "getter_name": "email",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_admin",
            "getter_name": "isAdmin",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_admin\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_admin\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "has_profile_image",
            "getter_name": "hasProfileImage",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"has_profile_image\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"has_profile_image\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "profile_changed_at",
            "getter_name": "profileChangedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "avatar_color",
            "getter_name": "avatarColor",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AvatarColor>(AvatarColor.values)",
              "dart_type_name": "AvatarColor"
            }
          },
          {
            "name": "quota_size_in_bytes",
            "getter_name": "quotaSizeInBytes",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "quota_usage_in_bytes",
            "getter_name": "quotaUsageInBytes",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "pin_code",
            "getter_name": "pinCode",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 18,
      "references": [
        0
      ],
      "type": "table",
      "data": {
        "name": "user_metadata_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "user_id",
            "getter_name": "userId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "key",
            "getter_name": "key",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<UserMetadataKey>(UserMetadataKey.values)",
              "dart_type_name": "UserMetadataKey"
            }
          },
          {
            "name": "value",
            "getter_name": "value",
            "moor_type": "blob",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "userMetadataConverter",
              "dart_type_name": "Map<String, Object?>"
            }
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "user_id",
          "key"
        ]
      }
    },
    {
      "id": 19,
      "references": [
        0
      ],
      "type": "table",
      "data": {
        "name": "partner_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "shared_by_id",
            "getter_name": "sharedById",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "shared_with_id",
            "getter_name": "sharedWithId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "in_timeline",
            "getter_name": "inTimeline",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"in_timeline\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"in_timeline\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "shared_by_id",
          "shared_with_id"
        ]
      }
    },
    {
      "id": 20,
      "references": [
        1
      ],
      "type": "table",
      "data": {
        "name": "remote_exif_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "city",
            "getter_name": "city",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "state",
            "getter_name": "state",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "country",
            "getter_name": "country",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "date_time_original",
            "getter_name": "dateTimeOriginal",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "description",
            "getter_name": "description",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "height",
            "getter_name": "height",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "width",
            "getter_name": "width",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "exposure_time",
            "getter_name": "exposureTime",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "f_number",
            "getter_name": "fNumber",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "file_size",
            "getter_name": "fileSize",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "focal_length",
            "getter_name": "focalLength",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "latitude",
            "getter_name": "latitude",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "longitude",
            "getter_name": "longitude",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "iso",
            "getter_name": "iso",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "make",
            "getter_name": "make",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "model",
            "getter_name": "model",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "lens",
            "getter_name": "lens",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "orientation",
            "getter_name": "orientation",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "time_zone",
            "getter_name": "timeZone",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "rating",
            "getter_name": "rating",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "projection_type",
            "getter_name": "projectionType",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "asset_id"
        ]
      }
    },
    {
      "id": 21,
      "references": [
        1,
        4
      ],
      "type": "table",
      "data": {
        "name": "remote_album_asset_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "album_id",
            "getter_name": "albumId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_album_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_album_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_album_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "asset_id",
          "album_id"
        ]
      }
    },
    {
      "id": 22,
      "references": [
        4,
        0
      ],
      "type": "table",
      "data": {
        "name": "remote_album_user_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "album_id",
            "getter_name": "albumId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_album_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_album_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_album_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "user_id",
            "getter_name": "userId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "role",
            "getter_name": "role",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AlbumUserRole>(AlbumUserRole.values)",
              "dart_type_name": "AlbumUserRole"
            }
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "album_id",
          "user_id"
        ]
      }
    },
    {
      "id": 23,
      "references": [
        1
      ],
      "type": "table",
      "data": {
        "name": "remote_asset_cloud_id_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "cloud_id",
            "getter_name": "cloudId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "adjustment_time",
            "getter_name": "adjustmentTime",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "latitude",
            "getter_name": "latitude",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "longitude",
            "getter_name": "longitude",
            "moor_type": "double",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "asset_id"
        ]
      }
    },
    {
      "id": 24,
      "references": [
        0
      ],
      "type": "table",
      "data": {
        "name": "memory_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "deleted_at",
            "getter_name": "deletedAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "owner_id",
            "getter_name": "ownerId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "type",
            "getter_name": "type",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<MemoryTypeEnum>(MemoryTypeEnum.values)",
              "dart_type_name": "MemoryTypeEnum"
            }
          },
          {
            "name": "data",
            "getter_name": "data",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_saved",
            "getter_name": "isSaved",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_saved\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_saved\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "memory_at",
            "getter_name": "memoryAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "seen_at",
            "getter_name": "seenAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "show_at",
            "getter_name": "showAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "hide_at",
            "getter_name": "hideAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 25,
      "references": [
        1,
        24
      ],
      "type": "table",
      "data": {
        "name": "memory_asset_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "memory_id",
            "getter_name": "memoryId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES memory_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES memory_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "memory_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "asset_id",
          "memory_id"
        ]
      }
    },
    {
      "id": 26,
      "references": [
        0
      ],
      "type": "table",
      "data": {
        "name": "person_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "owner_id",
            "getter_name": "ownerId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES user_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES user_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "user_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "face_asset_id",
            "getter_name": "faceAssetId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_favorite",
            "getter_name": "isFavorite",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_favorite\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_favorite\" IN (0, 1))"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_hidden",
            "getter_name": "isHidden",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_hidden\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_hidden\" IN (0, 1))"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "color",
            "getter_name": "color",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "birth_date",
            "getter_name": "birthDate",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 27,
      "references": [
        1,
        26
      ],
      "type": "table",
      "data": {
        "name": "asset_face_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "person_id",
            "getter_name": "personId",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES person_entity (id) ON DELETE SET NULL",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES person_entity (id) ON DELETE SET NULL"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "person_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "setNull"
                }
              }
            ]
          },
          {
            "name": "image_width",
            "getter_name": "imageWidth",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "image_height",
            "getter_name": "imageHeight",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "bounding_box_x1",
            "getter_name": "boundingBoxX1",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "bounding_box_y1",
            "getter_name": "boundingBoxY1",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "bounding_box_x2",
            "getter_name": "boundingBoxX2",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "bounding_box_y2",
            "getter_name": "boundingBoxY2",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "source_type",
            "getter_name": "sourceType",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_visible",
            "getter_name": "isVisible",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_visible\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_visible\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('1')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "deleted_at",
            "getter_name": "deletedAt",
            "moor_type": "dateTime",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 28,
      "references": [],
      "type": "table",
      "data": {
        "name": "store_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "string_value",
            "getter_name": "stringValue",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "int_value",
            "getter_name": "intValue",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 29,
      "references": [],
      "type": "table",
      "data": {
        "name": "trashed_local_asset_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "name",
            "getter_name": "name",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "type",
            "getter_name": "type",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetType>(AssetType.values)",
              "dart_type_name": "AssetType"
            }
          },
          {
            "name": "created_at",
            "getter_name": "createdAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "width",
            "getter_name": "width",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "height",
            "getter_name": "height",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "duration_ms",
            "getter_name": "durationMs",
            "moor_type": "int",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "album_id",
            "getter_name": "albumId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "checksum",
            "getter_name": "checksum",
            "moor_type": "string",
            "nullable": true,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_favorite",
            "getter_name": "isFavorite",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_favorite\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_favorite\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "orientation",
            "getter_name": "orientation",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "source",
            "getter_name": "source",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<TrashOrigin>(TrashOrigin.values)",
              "dart_type_name": "TrashOrigin"
            }
          },
          {
            "name": "playback_style",
            "getter_name": "playbackStyle",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('0')",
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetPlaybackStyle>(AssetPlaybackStyle.values)",
              "dart_type_name": "AssetPlaybackStyle"
            }
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id",
          "album_id"
        ]
      }
    },
    {
      "id": 30,
      "references": [
        1
      ],
      "type": "table",
      "data": {
        "name": "asset_edit_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "action",
            "getter_name": "action",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "const EnumIndexConverter<AssetEditAction>(AssetEditAction.values)",
              "dart_type_name": "AssetEditAction"
            }
          },
          {
            "name": "parameters",
            "getter_name": "parameters",
            "moor_type": "blob",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [],
            "type_converter": {
              "dart_expr": "editParameterConverter",
              "dart_type_name": "Map<String, Object?>"
            }
          },
          {
            "name": "sequence",
            "getter_name": "sequence",
            "moor_type": "int",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 31,
      "references": [],
      "type": "table",
      "data": {
        "name": "settings",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "key",
            "getter_name": "key",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "value",
            "getter_name": "value",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "updated_at",
            "getter_name": "updatedAt",
            "moor_type": "dateTime",
            "nullable": false,
            "customConstraints": null,
            "default_dart": "const CustomExpression('CURRENT_TIMESTAMP')",
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "key"
        ]
      }
    },
    {
      "id": 32,
      "references": [
        1
      ],
      "type": "table",
      "data": {
        "name": "asset_ocr_entity",
        "was_declared_in_moor": false,
        "columns": [
          {
            "name": "id",
            "getter_name": "id",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "asset_id",
            "getter_name": "assetId",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE",
            "dialectAwareDefaultConstraints": {
              "sqlite": "REFERENCES remote_asset_entity (id) ON DELETE CASCADE"
            },
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": [
              {
                "foreign_key": {
                  "to": {
                    "table": "remote_asset_entity",
                    "column": "id"
                  },
                  "initially_deferred": false,
                  "on_update": null,
                  "on_delete": "cascade"
                }
              }
            ]
          },
          {
            "name": "x1",
            "getter_name": "x1",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "y1",
            "getter_name": "y1",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "x2",
            "getter_name": "x2",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "y2",
            "getter_name": "y2",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "x3",
            "getter_name": "x3",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "y3",
            "getter_name": "y3",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "x4",
            "getter_name": "x4",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "y4",
            "getter_name": "y4",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "box_score",
            "getter_name": "boxScore",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "text_score",
            "getter_name": "textScore",
            "moor_type": "double",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "recognized_text",
            "getter_name": "recognizedText",
            "moor_type": "string",
            "nullable": false,
            "customConstraints": null,
            "default_dart": null,
            "default_client_dart": null,
            "dsl_features": []
          },
          {
            "name": "is_visible",
            "getter_name": "isVisible",
            "moor_type": "bool",
            "nullable": false,
            "customConstraints": null,
            "defaultConstraints": "CHECK (\"is_visible\" IN (0, 1))",
            "dialectAwareDefaultConstraints": {
              "sqlite": "CHECK (\"is_visible\" IN (0, 1))"
            },
            "default_dart": "const CustomExpression('1')",
            "default_client_dart": null,
            "dsl_features": []
          }
        ],
        "is_virtual": false,
        "without_rowid": true,
        "constraints": [],
        "strict": true,
        "explicit_pk": [
          "id"
        ]
      }
    },
    {
      "id": 33,
      "references": [
        19
      ],
      "type": "index",
      "data": {
        "on": 19,
        "name": "idx_partner_shared_with_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_partner_shared_with_id ON partner_entity (shared_with_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 34,
      "references": [
        20
      ],
      "type": "index",
      "data": {
        "on": 20,
        "name": "idx_lat_lng",
        "sql": "CREATE INDEX IF NOT EXISTS idx_lat_lng ON remote_exif_entity (latitude, longitude)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 35,
      "references": [
        20
      ],
      "type": "index",
      "data": {
        "on": 20,
        "name": "idx_remote_exif_city",
        "sql": "CREATE INDEX IF NOT EXISTS idx_remote_exif_city\nON remote_exif_entity (city) WHERE city IS NOT NULL\n",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 36,
      "references": [
        21
      ],
      "type": "index",
      "data": {
        "on": 21,
        "name": "idx_remote_album_asset_album_asset",
        "sql": "CREATE INDEX IF NOT EXISTS idx_remote_album_asset_album_asset ON remote_album_asset_entity (album_id, asset_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 37,
      "references": [
        23
      ],
      "type": "index",
      "data": {
        "on": 23,
        "name": "idx_remote_asset_cloud_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_cloud_id ON remote_asset_cloud_id_entity (cloud_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 38,
      "references": [
        26
      ],
      "type": "index",
      "data": {
        "on": 26,
        "name": "idx_person_owner_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_person_owner_id ON person_entity (owner_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 39,
      "references": [
        27
      ],
      "type": "index",
      "data": {
        "on": 27,
        "name": "idx_asset_face_person_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_asset_face_person_id ON asset_face_entity (person_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 40,
      "references": [
        27
      ],
      "type": "index",
      "data": {
        "on": 27,
        "name": "idx_asset_face_asset_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_asset_face_asset_id ON asset_face_entity (asset_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 41,
      "references": [
        27
      ],
      "type": "index",
      "data": {
        "on": 27,
        "name": "idx_asset_face_visible_person",
        "sql": "CREATE INDEX IF NOT EXISTS idx_asset_face_visible_person\nON asset_face_entity (person_id, asset_id)\nWHERE is_visible = 1 AND deleted_at IS NULL\n",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 42,
      "references": [
        29
      ],
      "type": "index",
      "data": {
        "on": 29,
        "name": "idx_trashed_local_asset_checksum",
        "sql": "CREATE INDEX IF NOT EXISTS idx_trashed_local_asset_checksum ON trashed_local_asset_entity (checksum)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 43,
      "references": [
        29
      ],
      "type": "index",
      "data": {
        "on": 29,
        "name": "idx_trashed_local_asset_album",
        "sql": "CREATE INDEX IF NOT EXISTS idx_trashed_local_asset_album ON trashed_local_asset_entity (album_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 44,
      "references": [
        30
      ],
      "type": "index",
      "data": {
        "on": 30,
        "name": "idx_asset_edit_asset_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_asset_edit_asset_id ON asset_edit_entity (asset_id)",
        "unique": false,
        "columns": []
      }
    },
    {
      "id": 45,
      "references": [
        32
      ],
      "type": "index",
      "data": {
        "on": 32,
        "name": "idx_asset_ocr_asset_id",
        "sql": "CREATE INDEX IF NOT EXISTS idx_asset_ocr_asset_id ON asset_ocr_entity (asset_id)",
        "unique": false,
        "columns": []
      }
    }
  ],
  "fixed_sql": [
    {
      "name": "user_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"user_entity\" (\"id\" TEXT NOT NULL, \"name\" TEXT NOT NULL, \"email\" TEXT NOT NULL, \"has_profile_image\" INTEGER NOT NULL DEFAULT 0 CHECK (\"has_profile_image\" IN (0, 1)), \"profile_changed_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"avatar_color\" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "remote_asset_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"remote_asset_entity\" (\"name\" TEXT NOT NULL, \"type\" INTEGER NOT NULL, \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"width\" INTEGER NULL, \"height\" INTEGER NULL, \"duration_ms\" INTEGER NULL, \"id\" TEXT NOT NULL, \"checksum\" TEXT NOT NULL, \"is_favorite\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_favorite\" IN (0, 1)), \"owner_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"local_date_time\" TEXT NULL, \"thumb_hash\" TEXT NULL, \"deleted_at\" TEXT NULL, \"uploaded_at\" TEXT NULL, \"live_photo_video_id\" TEXT NULL, \"visibility\" INTEGER NOT NULL, \"stack_id\" TEXT NULL, \"library_id\" TEXT NULL, \"is_edited\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_edited\" IN (0, 1)), PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "stack_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"stack_entity\" (\"id\" TEXT NOT NULL, \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"owner_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"primary_asset_id\" TEXT NOT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "local_asset_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"local_asset_entity\" (\"name\" TEXT NOT NULL, \"type\" INTEGER NOT NULL, \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"width\" INTEGER NULL, \"height\" INTEGER NULL, \"duration_ms\" INTEGER NULL, \"id\" TEXT NOT NULL, \"checksum\" TEXT NULL, \"is_favorite\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_favorite\" IN (0, 1)), \"orientation\" INTEGER NOT NULL DEFAULT 0, \"i_cloud_id\" TEXT NULL, \"adjustment_time\" TEXT NULL, \"latitude\" REAL NULL, \"longitude\" REAL NULL, \"playback_style\" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "remote_album_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"remote_album_entity\" (\"id\" TEXT NOT NULL, \"name\" TEXT NOT NULL, \"description\" TEXT NOT NULL DEFAULT '', \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"thumbnail_asset_id\" TEXT NULL REFERENCES remote_asset_entity (id) ON DELETE SET NULL, \"is_activity_enabled\" INTEGER NOT NULL DEFAULT 1 CHECK (\"is_activity_enabled\" IN (0, 1)), \"order\" INTEGER NOT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "local_album_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"local_album_entity\" (\"id\" TEXT NOT NULL, \"name\" TEXT NOT NULL, \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"backup_selection\" INTEGER NOT NULL, \"is_ios_shared_album\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_ios_shared_album\" IN (0, 1)), \"linked_remote_album_id\" TEXT NULL REFERENCES remote_album_entity (id) ON DELETE SET NULL, \"marker\" INTEGER NULL CHECK (\"marker\" IN (0, 1)), PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "local_album_asset_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"local_album_asset_entity\" (\"asset_id\" TEXT NOT NULL REFERENCES local_asset_entity (id) ON DELETE CASCADE, \"album_id\" TEXT NOT NULL REFERENCES local_album_entity (id) ON DELETE CASCADE, \"marker\" INTEGER NULL CHECK (\"marker\" IN (0, 1)), PRIMARY KEY (\"asset_id\", \"album_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "idx_local_album_asset_album_asset",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_local_album_asset_album_asset ON local_album_asset_entity (album_id, asset_id)"
        }
      ]
    },
    {
      "name": "idx_local_asset_checksum",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_local_asset_checksum ON local_asset_entity (checksum)"
        }
      ]
    },
    {
      "name": "idx_local_asset_cloud_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_local_asset_cloud_id ON local_asset_entity (i_cloud_id)"
        }
      ]
    },
    {
      "name": "idx_local_asset_created_at",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_local_asset_created_at ON local_asset_entity (created_at)"
        }
      ]
    },
    {
      "name": "idx_stack_primary_asset_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_stack_primary_asset_id ON stack_entity (primary_asset_id)"
        }
      ]
    },
    {
      "name": "UQ_remote_assets_owner_checksum",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_checksum ON remote_asset_entity (owner_id, checksum) WHERE(library_id IS NULL)"
        }
      ]
    },
    {
      "name": "UQ_remote_assets_owner_library_checksum",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_library_checksum ON remote_asset_entity (owner_id, library_id, checksum) WHERE(library_id IS NOT NULL)"
        }
      ]
    },
    {
      "name": "idx_remote_asset_checksum",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_checksum ON remote_asset_entity (checksum)"
        }
      ]
    },
    {
      "name": "idx_remote_asset_stack_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_stack_id ON remote_asset_entity (stack_id)"
        }
      ]
    },
    {
      "name": "idx_remote_asset_owner_visibility_deleted_created",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_owner_visibility_deleted_created ON remote_asset_entity (owner_id, visibility, deleted_at, created_at DESC)"
        }
      ]
    },
    {
      "name": "auth_user_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"auth_user_entity\" (\"id\" TEXT NOT NULL, \"name\" TEXT NOT NULL, \"email\" TEXT NOT NULL, \"is_admin\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_admin\" IN (0, 1)), \"has_profile_image\" INTEGER NOT NULL DEFAULT 0 CHECK (\"has_profile_image\" IN (0, 1)), \"profile_changed_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"avatar_color\" INTEGER NOT NULL, \"quota_size_in_bytes\" INTEGER NOT NULL DEFAULT 0, \"quota_usage_in_bytes\" INTEGER NOT NULL DEFAULT 0, \"pin_code\" TEXT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "user_metadata_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"user_metadata_entity\" (\"user_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"key\" INTEGER NOT NULL, \"value\" BLOB NOT NULL, PRIMARY KEY (\"user_id\", \"key\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "partner_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"partner_entity\" (\"shared_by_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"shared_with_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"in_timeline\" INTEGER NOT NULL DEFAULT 0 CHECK (\"in_timeline\" IN (0, 1)), PRIMARY KEY (\"shared_by_id\", \"shared_with_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "remote_exif_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"remote_exif_entity\" (\"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"city\" TEXT NULL, \"state\" TEXT NULL, \"country\" TEXT NULL, \"date_time_original\" TEXT NULL, \"description\" TEXT NULL, \"height\" INTEGER NULL, \"width\" INTEGER NULL, \"exposure_time\" TEXT NULL, \"f_number\" REAL NULL, \"file_size\" INTEGER NULL, \"focal_length\" REAL NULL, \"latitude\" REAL NULL, \"longitude\" REAL NULL, \"iso\" INTEGER NULL, \"make\" TEXT NULL, \"model\" TEXT NULL, \"lens\" TEXT NULL, \"orientation\" TEXT NULL, \"time_zone\" TEXT NULL, \"rating\" INTEGER NULL, \"projection_type\" TEXT NULL, PRIMARY KEY (\"asset_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "remote_album_asset_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"remote_album_asset_entity\" (\"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"album_id\" TEXT NOT NULL REFERENCES remote_album_entity (id) ON DELETE CASCADE, PRIMARY KEY (\"asset_id\", \"album_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "remote_album_user_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"remote_album_user_entity\" (\"album_id\" TEXT NOT NULL REFERENCES remote_album_entity (id) ON DELETE CASCADE, \"user_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"role\" INTEGER NOT NULL, PRIMARY KEY (\"album_id\", \"user_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "remote_asset_cloud_id_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"remote_asset_cloud_id_entity\" (\"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"cloud_id\" TEXT NULL, \"created_at\" TEXT NULL, \"adjustment_time\" TEXT NULL, \"latitude\" REAL NULL, \"longitude\" REAL NULL, PRIMARY KEY (\"asset_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "memory_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"memory_entity\" (\"id\" TEXT NOT NULL, \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"deleted_at\" TEXT NULL, \"owner_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"type\" INTEGER NOT NULL, \"data\" TEXT NOT NULL, \"is_saved\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_saved\" IN (0, 1)), \"memory_at\" TEXT NOT NULL, \"seen_at\" TEXT NULL, \"show_at\" TEXT NULL, \"hide_at\" TEXT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "memory_asset_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"memory_asset_entity\" (\"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"memory_id\" TEXT NOT NULL REFERENCES memory_entity (id) ON DELETE CASCADE, PRIMARY KEY (\"asset_id\", \"memory_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "person_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"person_entity\" (\"id\" TEXT NOT NULL, \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"owner_id\" TEXT NOT NULL REFERENCES user_entity (id) ON DELETE CASCADE, \"name\" TEXT NOT NULL, \"face_asset_id\" TEXT NULL, \"is_favorite\" INTEGER NOT NULL CHECK (\"is_favorite\" IN (0, 1)), \"is_hidden\" INTEGER NOT NULL CHECK (\"is_hidden\" IN (0, 1)), \"color\" TEXT NULL, \"birth_date\" TEXT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "asset_face_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"asset_face_entity\" (\"id\" TEXT NOT NULL, \"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"person_id\" TEXT NULL REFERENCES person_entity (id) ON DELETE SET NULL, \"image_width\" INTEGER NOT NULL, \"image_height\" INTEGER NOT NULL, \"bounding_box_x1\" INTEGER NOT NULL, \"bounding_box_y1\" INTEGER NOT NULL, \"bounding_box_x2\" INTEGER NOT NULL, \"bounding_box_y2\" INTEGER NOT NULL, \"source_type\" TEXT NOT NULL, \"is_visible\" INTEGER NOT NULL DEFAULT 1 CHECK (\"is_visible\" IN (0, 1)), \"deleted_at\" TEXT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "store_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"store_entity\" (\"id\" INTEGER NOT NULL, \"string_value\" TEXT NULL, \"int_value\" INTEGER NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "trashed_local_asset_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"trashed_local_asset_entity\" (\"name\" TEXT NOT NULL, \"type\" INTEGER NOT NULL, \"created_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), \"width\" INTEGER NULL, \"height\" INTEGER NULL, \"duration_ms\" INTEGER NULL, \"id\" TEXT NOT NULL, \"album_id\" TEXT NOT NULL, \"checksum\" TEXT NULL, \"is_favorite\" INTEGER NOT NULL DEFAULT 0 CHECK (\"is_favorite\" IN (0, 1)), \"orientation\" INTEGER NOT NULL DEFAULT 0, \"source\" INTEGER NOT NULL, \"playback_style\" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY (\"id\", \"album_id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "asset_edit_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"asset_edit_entity\" (\"id\" TEXT NOT NULL, \"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"action\" INTEGER NOT NULL, \"parameters\" BLOB NOT NULL, \"sequence\" INTEGER NOT NULL, PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "settings",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"settings\" (\"key\" TEXT NOT NULL, \"value\" TEXT NOT NULL, \"updated_at\" TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP), PRIMARY KEY (\"key\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "asset_ocr_entity",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE TABLE IF NOT EXISTS \"asset_ocr_entity\" (\"id\" TEXT NOT NULL, \"asset_id\" TEXT NOT NULL REFERENCES remote_asset_entity (id) ON DELETE CASCADE, \"x1\" REAL NOT NULL, \"y1\" REAL NOT NULL, \"x2\" REAL NOT NULL, \"y2\" REAL NOT NULL, \"x3\" REAL NOT NULL, \"y3\" REAL NOT NULL, \"x4\" REAL NOT NULL, \"y4\" REAL NOT NULL, \"box_score\" REAL NOT NULL, \"text_score\" REAL NOT NULL, \"recognized_text\" TEXT NOT NULL, \"is_visible\" INTEGER NOT NULL DEFAULT 1 CHECK (\"is_visible\" IN (0, 1)), PRIMARY KEY (\"id\")) WITHOUT ROWID, STRICT;"
        }
      ]
    },
    {
      "name": "idx_partner_shared_with_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_partner_shared_with_id ON partner_entity (shared_with_id)"
        }
      ]
    },
    {
      "name": "idx_lat_lng",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_lat_lng ON remote_exif_entity (latitude, longitude)"
        }
      ]
    },
    {
      "name": "idx_remote_exif_city",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_remote_exif_city ON remote_exif_entity (city) WHERE city IS NOT NULL"
        }
      ]
    },
    {
      "name": "idx_remote_album_asset_album_asset",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_remote_album_asset_album_asset ON remote_album_asset_entity (album_id, asset_id)"
        }
      ]
    },
    {
      "name": "idx_remote_asset_cloud_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_remote_asset_cloud_id ON remote_asset_cloud_id_entity (cloud_id)"
        }
      ]
    },
    {
      "name": "idx_person_owner_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_person_owner_id ON person_entity (owner_id)"
        }
      ]
    },
    {
      "name": "idx_asset_face_person_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_asset_face_person_id ON asset_face_entity (person_id)"
        }
      ]
    },
    {
      "name": "idx_asset_face_asset_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_asset_face_asset_id ON asset_face_entity (asset_id)"
        }
      ]
    },
    {
      "name": "idx_asset_face_visible_person",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_asset_face_visible_person ON asset_face_entity (person_id, asset_id) WHERE is_visible = 1 AND deleted_at IS NULL"
        }
      ]
    },
    {
      "name": "idx_trashed_local_asset_checksum",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_trashed_local_asset_checksum ON trashed_local_asset_entity (checksum)"
        }
      ]
    },
    {
      "name": "idx_trashed_local_asset_album",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_trashed_local_asset_album ON trashed_local_asset_entity (album_id)"
        }
      ]
    },
    {
      "name": "idx_asset_edit_asset_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_asset_edit_asset_id ON asset_edit_entity (asset_id)"
        }
      ]
    },
    {
      "name": "idx_asset_ocr_asset_id",
      "sql": [
        {
          "dialect": "sqlite",
          "sql": "CREATE INDEX IF NOT EXISTS idx_asset_ocr_asset_id ON asset_ocr_entity (asset_id)"
        }
      ]
    }
  ]
}