1// Signature format: 4.0
2package androidx.room {
3
4  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface AutoMigration {
5    method public abstract int from();
6    method public abstract Class<?> spec() default java.lang.Object.class;
7    method public abstract int to();
8  }
9
10  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({}) public @interface BuiltInTypeConverters {
11    method public abstract androidx.room.BuiltInTypeConverters.State enums() default androidx.room.BuiltInTypeConverters.State.INHERITED;
12    method public abstract androidx.room.BuiltInTypeConverters.State uuid() default androidx.room.BuiltInTypeConverters.State.INHERITED;
13  }
14
15  public enum BuiltInTypeConverters.State {
16    enum_constant public static final androidx.room.BuiltInTypeConverters.State DISABLED;
17    enum_constant public static final androidx.room.BuiltInTypeConverters.State ENABLED;
18    enum_constant public static final androidx.room.BuiltInTypeConverters.State INHERITED;
19  }
20
21  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface ColumnInfo {
22    method @androidx.room.ColumnInfo.Collate public abstract int collate() default androidx.room.ColumnInfo.UNSPECIFIED;
23    method public abstract String defaultValue() default androidx.room.ColumnInfo.VALUE_UNSPECIFIED;
24    method public abstract boolean index() default false;
25    method public abstract String name() default androidx.room.ColumnInfo.INHERIT_FIELD_NAME;
26    method @androidx.room.ColumnInfo.SQLiteTypeAffinity public abstract int typeAffinity() default androidx.room.ColumnInfo.UNDEFINED;
27    field public static final int BINARY = 2; // 0x2
28    field public static final int BLOB = 5; // 0x5
29    field public static final String INHERIT_FIELD_NAME = "[field-name]";
30    field public static final int INTEGER = 3; // 0x3
31    field @RequiresApi(21) public static final int LOCALIZED = 5; // 0x5
32    field public static final int NOCASE = 3; // 0x3
33    field public static final int REAL = 4; // 0x4
34    field public static final int RTRIM = 4; // 0x4
35    field public static final int TEXT = 2; // 0x2
36    field public static final int UNDEFINED = 1; // 0x1
37    field @RequiresApi(21) public static final int UNICODE = 6; // 0x6
38    field public static final int UNSPECIFIED = 1; // 0x1
39    field public static final String VALUE_UNSPECIFIED = "[value-unspecified]";
40  }
41
42  @IntDef({androidx.room.ColumnInfo.UNSPECIFIED, androidx.room.ColumnInfo.BINARY, androidx.room.ColumnInfo.NOCASE, androidx.room.ColumnInfo.RTRIM, androidx.room.ColumnInfo.LOCALIZED, androidx.room.ColumnInfo.UNICODE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface ColumnInfo.Collate {
43  }
44
45  @IntDef({androidx.room.ColumnInfo.UNDEFINED, androidx.room.ColumnInfo.TEXT, androidx.room.ColumnInfo.INTEGER, androidx.room.ColumnInfo.REAL, androidx.room.ColumnInfo.BLOB}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface ColumnInfo.SQLiteTypeAffinity {
46  }
47
48  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Dao {
49  }
50
51  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Database {
52    method public abstract androidx.room.AutoMigration[] autoMigrations() default {};
53    method public abstract Class<?>[] entities();
54    method public abstract boolean exportSchema() default true;
55    method public abstract int version();
56    method public abstract Class<?>[] views() default {};
57  }
58
59  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface DatabaseView {
60    method public abstract String value() default "";
61    method public abstract String viewName() default "";
62  }
63
64  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Delete {
65    method public abstract Class<?> entity() default java.lang.Object.class;
66  }
67
68  @java.lang.annotation.Repeatable(DeleteColumn.Entries.class) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface DeleteColumn {
69    method public abstract String columnName();
70    method public abstract String tableName();
71  }
72
73  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public static @interface DeleteColumn.Entries {
74    method public abstract androidx.room.DeleteColumn[] value();
75  }
76
77  @java.lang.annotation.Repeatable(DeleteTable.Entries.class) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface DeleteTable {
78    method public abstract String tableName();
79  }
80
81  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public static @interface DeleteTable.Entries {
82    method public abstract androidx.room.DeleteTable[] value();
83  }
84
85  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface Embedded {
86    method public abstract String prefix() default "";
87  }
88
89  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Entity {
90    method public abstract androidx.room.ForeignKey[] foreignKeys() default {};
91    method public abstract String[] ignoredColumns() default {};
92    method public abstract androidx.room.Index[] indices() default {};
93    method public abstract boolean inheritSuperIndices() default false;
94    method public abstract String[] primaryKeys() default {};
95    method public abstract String tableName() default "";
96  }
97
98  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({}) public @interface ForeignKey {
99    method public abstract String[] childColumns();
100    method public abstract boolean deferred() default false;
101    method public abstract Class<?> entity();
102    method @androidx.room.ForeignKey.Action public abstract int onDelete() default androidx.room.ForeignKey.NO_ACTION;
103    method @androidx.room.ForeignKey.Action public abstract int onUpdate() default androidx.room.ForeignKey.NO_ACTION;
104    method public abstract String[] parentColumns();
105    field public static final int CASCADE = 5; // 0x5
106    field public static final int NO_ACTION = 1; // 0x1
107    field public static final int RESTRICT = 2; // 0x2
108    field public static final int SET_DEFAULT = 4; // 0x4
109    field public static final int SET_NULL = 3; // 0x3
110  }
111
112  @IntDef({androidx.room.ForeignKey.NO_ACTION, androidx.room.ForeignKey.RESTRICT, androidx.room.ForeignKey.SET_NULL, androidx.room.ForeignKey.SET_DEFAULT, androidx.room.ForeignKey.CASCADE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface ForeignKey.Action {
113  }
114
115  @RequiresApi(16) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Fts3 {
116    method public abstract String tokenizer() default androidx.room.FtsOptions.TOKENIZER_SIMPLE;
117    method public abstract String[] tokenizerArgs() default {};
118  }
119
120  @RequiresApi(16) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Fts4 {
121    method public abstract Class<?> contentEntity() default java.lang.Object.class;
122    method public abstract String languageId() default "";
123    method public abstract androidx.room.FtsOptions.MatchInfo matchInfo() default androidx.room.FtsOptions.MatchInfo.FTS4;
124    method public abstract String[] notIndexed() default {};
125    method public abstract androidx.room.FtsOptions.Order order() default androidx.room.FtsOptions.Order.ASC;
126    method public abstract int[] prefix() default {};
127    method public abstract String tokenizer() default androidx.room.FtsOptions.TOKENIZER_SIMPLE;
128    method public abstract String[] tokenizerArgs() default {};
129  }
130
131  public class FtsOptions {
132    field public static final String TOKENIZER_ICU = "icu";
133    field public static final String TOKENIZER_PORTER = "porter";
134    field public static final String TOKENIZER_SIMPLE = "simple";
135    field @RequiresApi(21) public static final String TOKENIZER_UNICODE61 = "unicode61";
136  }
137
138  public enum FtsOptions.MatchInfo {
139    enum_constant public static final androidx.room.FtsOptions.MatchInfo FTS3;
140    enum_constant public static final androidx.room.FtsOptions.MatchInfo FTS4;
141  }
142
143  public enum FtsOptions.Order {
144    enum_constant public static final androidx.room.FtsOptions.Order ASC;
145    enum_constant public static final androidx.room.FtsOptions.Order DESC;
146  }
147
148  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.CONSTRUCTOR}) public @interface Ignore {
149  }
150
151  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({}) public @interface Index {
152    method public abstract String name() default "";
153    method public abstract androidx.room.Index.Order[] orders() default {};
154    method public abstract boolean unique() default false;
155    method public abstract String[] value();
156  }
157
158  public enum Index.Order {
159    enum_constant public static final androidx.room.Index.Order ASC;
160    enum_constant public static final androidx.room.Index.Order DESC;
161  }
162
163  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface Insert {
164    method public abstract Class<?> entity() default java.lang.Object.class;
165    method @androidx.room.OnConflictStrategy public abstract int onConflict() default androidx.room.OnConflictStrategy.ABORT;
166  }
167
168  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({}) public @interface Junction {
169    method public abstract String entityColumn() default "";
170    method public abstract String parentColumn() default "";
171    method public abstract Class<?> value();
172  }
173
174  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface MapInfo {
175    method public abstract String keyColumn() default "";
176    method public abstract String valueColumn() default "";
177  }
178
179  @IntDef({androidx.room.OnConflictStrategy.REPLACE, androidx.room.OnConflictStrategy.ROLLBACK, androidx.room.OnConflictStrategy.ABORT, androidx.room.OnConflictStrategy.FAIL, androidx.room.OnConflictStrategy.IGNORE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface OnConflictStrategy {
180    field public static final int ABORT = 3; // 0x3
181    field @Deprecated public static final int FAIL = 4; // 0x4
182    field public static final int IGNORE = 5; // 0x5
183    field public static final int REPLACE = 1; // 0x1
184    field @Deprecated public static final int ROLLBACK = 2; // 0x2
185  }
186
187  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface PrimaryKey {
188    method public abstract boolean autoGenerate() default false;
189  }
190
191  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface ProvidedAutoMigrationSpec {
192  }
193
194  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface ProvidedTypeConverter {
195  }
196
197  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Query {
198    method public abstract String value();
199  }
200
201  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface RawQuery {
202    method public abstract Class<?>[] observedEntities() default {};
203  }
204
205  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface Relation {
206    method public abstract androidx.room.Junction associateBy() default @androidx.room.Junction;
207    method public abstract Class<?> entity() default java.lang.Object.class;
208    method public abstract String entityColumn();
209    method public abstract String parentColumn();
210    method public abstract String[] projection() default {};
211  }
212
213  @java.lang.annotation.Repeatable(RenameColumn.Entries.class) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface RenameColumn {
214    method public abstract String fromColumnName();
215    method public abstract String tableName();
216    method public abstract String toColumnName();
217  }
218
219  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public static @interface RenameColumn.Entries {
220    method public abstract androidx.room.RenameColumn[] value();
221  }
222
223  @java.lang.annotation.Repeatable(RenameTable.Entries.class) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface RenameTable {
224    method public abstract String fromTableName();
225    method public abstract String toTableName();
226  }
227
228  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public static @interface RenameTable.Entries {
229    method public abstract androidx.room.RenameTable[] value();
230  }
231
232  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.TYPE}) public @interface RewriteQueriesToDropUnusedColumns {
233  }
234
235  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class RoomMasterTable {
236    method public static String! createInsertQuery(String!);
237    field public static final String CREATE_QUERY = "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)";
238    field public static final String DEFAULT_ID = "42";
239    field public static final String NAME = "room_master_table";
240    field public static final String READ_QUERY = "SELECT identity_hash FROM room_master_table WHERE id = 42 LIMIT 1";
241    field public static final String TABLE_NAME = "room_master_table";
242  }
243
244  public class RoomWarnings {
245    ctor @Deprecated public RoomWarnings();
246    field public static final String CANNOT_CREATE_VERIFICATION_DATABASE = "ROOM_CANNOT_CREATE_VERIFICATION_DATABASE";
247    field public static final String CURSOR_MISMATCH = "ROOM_CURSOR_MISMATCH";
248    field public static final String DEFAULT_CONSTRUCTOR = "ROOM_DEFAULT_CONSTRUCTOR";
249    field public static final String DOES_NOT_IMPLEMENT_EQUALS_HASHCODE = "ROOM_TYPE_DOES_NOT_IMPLEMENT_EQUALS_HASHCODE";
250    field public static final String INDEX_FROM_EMBEDDED_ENTITY_IS_DROPPED = "ROOM_EMBEDDED_ENTITY_INDEX_IS_DROPPED";
251    field public static final String INDEX_FROM_EMBEDDED_FIELD_IS_DROPPED = "ROOM_EMBEDDED_INDEX_IS_DROPPED";
252    field public static final String INDEX_FROM_PARENT_FIELD_IS_DROPPED = "ROOM_PARENT_FIELD_INDEX_IS_DROPPED";
253    field public static final String INDEX_FROM_PARENT_IS_DROPPED = "ROOM_PARENT_INDEX_IS_DROPPED";
254    field public static final String MISMATCHED_GETTER = "ROOM_MISMATCHED_GETTER_TYPE";
255    field public static final String MISMATCHED_SETTER = "ROOM_MISMATCHED_SETTER_TYPE";
256    field public static final String MISSING_INDEX_ON_FOREIGN_KEY_CHILD = "ROOM_MISSING_FOREIGN_KEY_CHILD_INDEX";
257    field public static final String MISSING_INDEX_ON_JUNCTION = "MISSING_INDEX_ON_JUNCTION";
258    field public static final String MISSING_JAVA_TMP_DIR = "ROOM_MISSING_JAVA_TMP_DIR";
259    field public static final String MISSING_SCHEMA_LOCATION = "ROOM_MISSING_SCHEMA_LOCATION";
260    field public static final String PRIMARY_KEY_FROM_EMBEDDED_IS_DROPPED = "ROOM_EMBEDDED_PRIMARY_KEY_IS_DROPPED";
261    field public static final String RELATION_QUERY_WITHOUT_TRANSACTION = "ROOM_RELATION_QUERY_WITHOUT_TRANSACTION";
262    field public static final String RELATION_TYPE_MISMATCH = "ROOM_RELATION_TYPE_MISMATCH";
263  }
264
265  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.TYPE}) public @interface SkipQueryVerification {
266  }
267
268  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface Transaction {
269  }
270
271  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface TypeConverter {
272  }
273
274  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD}) public @interface TypeConverters {
275    method public abstract androidx.room.BuiltInTypeConverters builtInTypeConverters() default @androidx.room.BuiltInTypeConverters;
276    method public abstract Class<?>[] value() default {};
277  }
278
279  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface Update {
280    method public abstract Class<?> entity() default java.lang.Object.class;
281    method @androidx.room.OnConflictStrategy public abstract int onConflict() default androidx.room.OnConflictStrategy.ABORT;
282  }
283
284}
285
286