1// Signature format: 2.0
2package android.app.appsearch {
3
4  public final class AppSearchBatchResult<KeyType, ValueType> {
5    method @NonNull public java.util.Map<KeyType,android.app.appsearch.AppSearchResult<ValueType>> getAll();
6    method @NonNull public java.util.Map<KeyType,android.app.appsearch.AppSearchResult<ValueType>> getFailures();
7    method @NonNull public java.util.Map<KeyType,ValueType> getSuccesses();
8    method public boolean isSuccess();
9  }
10
11  public static final class AppSearchBatchResult.Builder<KeyType, ValueType> {
12    ctor public AppSearchBatchResult.Builder();
13    method @NonNull public android.app.appsearch.AppSearchBatchResult<KeyType,ValueType> build();
14    method @NonNull public android.app.appsearch.AppSearchBatchResult.Builder<KeyType,ValueType> setFailure(@NonNull KeyType, int, @Nullable String);
15    method @NonNull public android.app.appsearch.AppSearchBatchResult.Builder<KeyType,ValueType> setResult(@NonNull KeyType, @NonNull android.app.appsearch.AppSearchResult<ValueType>);
16    method @NonNull public android.app.appsearch.AppSearchBatchResult.Builder<KeyType,ValueType> setSuccess(@NonNull KeyType, @Nullable ValueType);
17  }
18
19  public class AppSearchManager {
20    method @FlaggedApi("com.android.appsearch.flags.enable_enterprise_global_search_session") public void createEnterpriseGlobalSearchSession(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.EnterpriseGlobalSearchSession>>);
21    method public void createGlobalSearchSession(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GlobalSearchSession>>);
22    method public void createSearchSession(@NonNull android.app.appsearch.AppSearchManager.SearchContext, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.AppSearchSession>>);
23    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.functions.AppFunctionManager getAppFunctionManager();
24  }
25
26  public static final class AppSearchManager.SearchContext {
27    method @NonNull public String getDatabaseName();
28  }
29
30  public static final class AppSearchManager.SearchContext.Builder {
31    ctor public AppSearchManager.SearchContext.Builder(@NonNull String);
32    method @NonNull public android.app.appsearch.AppSearchManager.SearchContext build();
33  }
34
35  public final class AppSearchResult<ValueType> {
36    method @Nullable public String getErrorMessage();
37    method public int getResultCode();
38    method @Nullable public ValueType getResultValue();
39    method public boolean isSuccess();
40    method @NonNull public static <ValueType> android.app.appsearch.AppSearchResult<ValueType> newFailedResult(int, @Nullable String);
41    method @NonNull public static <ValueType> android.app.appsearch.AppSearchResult<ValueType> newSuccessfulResult(@Nullable ValueType);
42    field @FlaggedApi("com.android.appsearch.flags.enable_result_denied_and_result_rate_limited") public static final int RESULT_DENIED = 9; // 0x9
43    field public static final int RESULT_INTERNAL_ERROR = 2; // 0x2
44    field public static final int RESULT_INVALID_ARGUMENT = 3; // 0x3
45    field public static final int RESULT_INVALID_SCHEMA = 7; // 0x7
46    field public static final int RESULT_IO_ERROR = 4; // 0x4
47    field public static final int RESULT_NOT_FOUND = 6; // 0x6
48    field public static final int RESULT_OK = 0; // 0x0
49    field public static final int RESULT_OUT_OF_SPACE = 5; // 0x5
50    field @FlaggedApi("com.android.appsearch.flags.enable_result_denied_and_result_rate_limited") public static final int RESULT_RATE_LIMITED = 10; // 0xa
51    field public static final int RESULT_SECURITY_ERROR = 8; // 0x8
52    field @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public static final int RESULT_TIMED_OUT = 11; // 0xb
53    field public static final int RESULT_UNKNOWN_ERROR = 1; // 0x1
54  }
55
56  public final class AppSearchSchema implements android.os.Parcelable {
57    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
58    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public String getDescription();
59    method @FlaggedApi("com.android.appsearch.flags.enable_get_parent_types_and_indexable_nested_properties") @NonNull public java.util.List<java.lang.String> getParentTypes();
60    method @NonNull public java.util.List<android.app.appsearch.AppSearchSchema.PropertyConfig> getProperties();
61    method @NonNull public String getSchemaType();
62    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
63    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.AppSearchSchema> CREATOR;
64  }
65
66  public static final class AppSearchSchema.BooleanPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
67  }
68
69  public static final class AppSearchSchema.BooleanPropertyConfig.Builder {
70    ctor public AppSearchSchema.BooleanPropertyConfig.Builder(@NonNull String);
71    method @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig build();
72    method @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig.Builder setCardinality(int);
73    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig.Builder setDescription(@NonNull String);
74  }
75
76  public static final class AppSearchSchema.Builder {
77    ctor public AppSearchSchema.Builder(@NonNull String);
78    method @NonNull public android.app.appsearch.AppSearchSchema.Builder addParentType(@NonNull String);
79    method @NonNull public android.app.appsearch.AppSearchSchema.Builder addProperty(@NonNull android.app.appsearch.AppSearchSchema.PropertyConfig);
80    method @NonNull public android.app.appsearch.AppSearchSchema build();
81    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.Builder setDescription(@NonNull String);
82  }
83
84  public static final class AppSearchSchema.BytesPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
85  }
86
87  public static final class AppSearchSchema.BytesPropertyConfig.Builder {
88    ctor public AppSearchSchema.BytesPropertyConfig.Builder(@NonNull String);
89    method @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig build();
90    method @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig.Builder setCardinality(int);
91    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig.Builder setDescription(@NonNull String);
92  }
93
94  public static final class AppSearchSchema.DocumentPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
95    method @FlaggedApi("com.android.appsearch.flags.enable_get_parent_types_and_indexable_nested_properties") @NonNull public java.util.List<java.lang.String> getIndexableNestedProperties();
96    method @NonNull public String getSchemaType();
97    method public boolean shouldIndexNestedProperties();
98  }
99
100  public static final class AppSearchSchema.DocumentPropertyConfig.Builder {
101    ctor public AppSearchSchema.DocumentPropertyConfig.Builder(@NonNull String, @NonNull String);
102    method @FlaggedApi("com.android.appsearch.flags.enable_get_parent_types_and_indexable_nested_properties") @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder addIndexableNestedProperties(@NonNull java.lang.String...);
103    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder addIndexableNestedProperties(@NonNull java.util.Collection<java.lang.String>);
104    method @FlaggedApi("com.android.appsearch.flags.enable_get_parent_types_and_indexable_nested_properties") @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder addIndexableNestedPropertyPaths(@NonNull android.app.appsearch.PropertyPath...);
105    method @FlaggedApi("com.android.appsearch.flags.enable_get_parent_types_and_indexable_nested_properties") @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder addIndexableNestedPropertyPaths(@NonNull java.util.Collection<android.app.appsearch.PropertyPath>);
106    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig build();
107    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setCardinality(int);
108    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setDescription(@NonNull String);
109    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setShouldIndexNestedProperties(boolean);
110  }
111
112  public static final class AppSearchSchema.DoublePropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
113  }
114
115  public static final class AppSearchSchema.DoublePropertyConfig.Builder {
116    ctor public AppSearchSchema.DoublePropertyConfig.Builder(@NonNull String);
117    method @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig build();
118    method @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig.Builder setCardinality(int);
119    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig.Builder setDescription(@NonNull String);
120  }
121
122  @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public static final class AppSearchSchema.EmbeddingPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
123    method public int getIndexingType();
124    field public static final int INDEXING_TYPE_NONE = 0; // 0x0
125    field public static final int INDEXING_TYPE_SIMILARITY = 1; // 0x1
126  }
127
128  @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public static final class AppSearchSchema.EmbeddingPropertyConfig.Builder {
129    ctor public AppSearchSchema.EmbeddingPropertyConfig.Builder(@NonNull String);
130    method @NonNull public android.app.appsearch.AppSearchSchema.EmbeddingPropertyConfig build();
131    method @NonNull public android.app.appsearch.AppSearchSchema.EmbeddingPropertyConfig.Builder setCardinality(int);
132    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.EmbeddingPropertyConfig.Builder setDescription(@NonNull String);
133    method @NonNull public android.app.appsearch.AppSearchSchema.EmbeddingPropertyConfig.Builder setIndexingType(int);
134  }
135
136  public static final class AppSearchSchema.LongPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
137    method public int getIndexingType();
138    field public static final int INDEXING_TYPE_NONE = 0; // 0x0
139    field public static final int INDEXING_TYPE_RANGE = 1; // 0x1
140  }
141
142  public static final class AppSearchSchema.LongPropertyConfig.Builder {
143    ctor public AppSearchSchema.LongPropertyConfig.Builder(@NonNull String);
144    method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig build();
145    method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig.Builder setCardinality(int);
146    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig.Builder setDescription(@NonNull String);
147    method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig.Builder setIndexingType(int);
148  }
149
150  public abstract static class AppSearchSchema.PropertyConfig {
151    method public int getCardinality();
152    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public String getDescription();
153    method @NonNull public String getName();
154    field public static final int CARDINALITY_OPTIONAL = 2; // 0x2
155    field public static final int CARDINALITY_REPEATED = 1; // 0x1
156    field public static final int CARDINALITY_REQUIRED = 3; // 0x3
157  }
158
159  public static final class AppSearchSchema.StringPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
160    method public int getIndexingType();
161    method public int getJoinableValueType();
162    method public int getTokenizerType();
163    field public static final int INDEXING_TYPE_EXACT_TERMS = 1; // 0x1
164    field public static final int INDEXING_TYPE_NONE = 0; // 0x0
165    field public static final int INDEXING_TYPE_PREFIXES = 2; // 0x2
166    field public static final int JOINABLE_VALUE_TYPE_NONE = 0; // 0x0
167    field public static final int JOINABLE_VALUE_TYPE_QUALIFIED_ID = 1; // 0x1
168    field public static final int TOKENIZER_TYPE_NONE = 0; // 0x0
169    field public static final int TOKENIZER_TYPE_PLAIN = 1; // 0x1
170    field public static final int TOKENIZER_TYPE_RFC822 = 3; // 0x3
171    field public static final int TOKENIZER_TYPE_VERBATIM = 2; // 0x2
172  }
173
174  public static final class AppSearchSchema.StringPropertyConfig.Builder {
175    ctor public AppSearchSchema.StringPropertyConfig.Builder(@NonNull String);
176    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig build();
177    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setCardinality(int);
178    method @FlaggedApi("com.android.appsearch.flags.enable_app_functions") @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setDescription(@NonNull String);
179    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setIndexingType(int);
180    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setJoinableValueType(int);
181    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setTokenizerType(int);
182  }
183
184  public final class AppSearchSession implements java.io.Closeable {
185    method public void close();
186    method public void getByDocumentId(@NonNull android.app.appsearch.GetByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument>);
187    method public void getNamespaces(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.Set<java.lang.String>>>);
188    method public void getSchema(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>>);
189    method public void getStorageInfo(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.StorageInfo>>);
190    method public void put(@NonNull android.app.appsearch.PutDocumentsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,java.lang.Void>);
191    method public void remove(@NonNull android.app.appsearch.RemoveByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,java.lang.Void>);
192    method public void remove(@NonNull String, @NonNull android.app.appsearch.SearchSpec, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>>);
193    method public void reportUsage(@NonNull android.app.appsearch.ReportUsageRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>>);
194    method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
195    method public void searchSuggestion(@NonNull String, @NonNull android.app.appsearch.SearchSuggestionSpec, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.List<android.app.appsearch.SearchSuggestionResult>>>);
196    method public void setSchema(@NonNull android.app.appsearch.SetSchemaRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.SetSchemaResponse>>);
197  }
198
199  public interface BatchResultCallback<KeyType, ValueType> {
200    method public void onResult(@NonNull android.app.appsearch.AppSearchBatchResult<KeyType,ValueType>);
201    method public default void onSystemError(@Nullable Throwable);
202  }
203
204  @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public final class EmbeddingVector implements android.os.Parcelable {
205    ctor public EmbeddingVector(@NonNull float[], @NonNull String);
206    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
207    method @NonNull public String getModelSignature();
208    method @NonNull public float[] getValues();
209    method public void writeToParcel(@NonNull android.os.Parcel, int);
210    field @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.EmbeddingVector> CREATOR;
211  }
212
213  @FlaggedApi("com.android.appsearch.flags.enable_enterprise_global_search_session") public class EnterpriseGlobalSearchSession {
214    method public void getByDocumentId(@NonNull String, @NonNull String, @NonNull android.app.appsearch.GetByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument>);
215    method public void getSchema(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>>);
216    method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
217  }
218
219  public class GenericDocument {
220    ctor protected GenericDocument(@NonNull android.app.appsearch.GenericDocument);
221    method public long getCreationTimestampMillis();
222    method @NonNull public String getId();
223    method public static int getMaxIndexedProperties();
224    method @NonNull public String getNamespace();
225    method @Nullable public Object getProperty(@NonNull String);
226    method public boolean getPropertyBoolean(@NonNull String);
227    method @Nullable public boolean[] getPropertyBooleanArray(@NonNull String);
228    method @Nullable public byte[] getPropertyBytes(@NonNull String);
229    method @Nullable public byte[][] getPropertyBytesArray(@NonNull String);
230    method @Nullable public android.app.appsearch.GenericDocument getPropertyDocument(@NonNull String);
231    method @Nullable public android.app.appsearch.GenericDocument[] getPropertyDocumentArray(@NonNull String);
232    method public double getPropertyDouble(@NonNull String);
233    method @Nullable public double[] getPropertyDoubleArray(@NonNull String);
234    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @Nullable public android.app.appsearch.EmbeddingVector getPropertyEmbedding(@NonNull String);
235    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @Nullable public android.app.appsearch.EmbeddingVector[] getPropertyEmbeddingArray(@NonNull String);
236    method public long getPropertyLong(@NonNull String);
237    method @Nullable public long[] getPropertyLongArray(@NonNull String);
238    method @NonNull public java.util.Set<java.lang.String> getPropertyNames();
239    method @Nullable public String getPropertyString(@NonNull String);
240    method @Nullable public String[] getPropertyStringArray(@NonNull String);
241    method @NonNull public String getSchemaType();
242    method public int getScore();
243    method public long getTtlMillis();
244  }
245
246  public static class GenericDocument.Builder<BuilderType extends android.app.appsearch.GenericDocument.Builder> {
247    ctor public GenericDocument.Builder(@NonNull String, @NonNull String, @NonNull String);
248    ctor @FlaggedApi("com.android.appsearch.flags.enable_generic_document_copy_constructor") public GenericDocument.Builder(@NonNull android.app.appsearch.GenericDocument);
249    method @NonNull public android.app.appsearch.GenericDocument build();
250    method @FlaggedApi("com.android.appsearch.flags.enable_generic_document_builder_hidden_methods") @NonNull public BuilderType clearProperty(@NonNull String);
251    method @NonNull public BuilderType setCreationTimestampMillis(long);
252    method @FlaggedApi("com.android.appsearch.flags.enable_generic_document_builder_hidden_methods") @NonNull public BuilderType setId(@NonNull String);
253    method @FlaggedApi("com.android.appsearch.flags.enable_generic_document_builder_hidden_methods") @NonNull public BuilderType setNamespace(@NonNull String);
254    method @NonNull public BuilderType setPropertyBoolean(@NonNull String, @NonNull boolean...);
255    method @NonNull public BuilderType setPropertyBytes(@NonNull String, @NonNull byte[]...);
256    method @NonNull public BuilderType setPropertyDocument(@NonNull String, @NonNull android.app.appsearch.GenericDocument...);
257    method @NonNull public BuilderType setPropertyDouble(@NonNull String, @NonNull double...);
258    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @NonNull public BuilderType setPropertyEmbedding(@NonNull String, @NonNull android.app.appsearch.EmbeddingVector...);
259    method @NonNull public BuilderType setPropertyLong(@NonNull String, @NonNull long...);
260    method @NonNull public BuilderType setPropertyString(@NonNull String, @NonNull java.lang.String...);
261    method @FlaggedApi("com.android.appsearch.flags.enable_generic_document_builder_hidden_methods") @NonNull public BuilderType setSchemaType(@NonNull String);
262    method @NonNull public BuilderType setScore(@IntRange(from=0, to=java.lang.Integer.MAX_VALUE) int);
263    method @NonNull public BuilderType setTtlMillis(long);
264  }
265
266  public final class GetByDocumentIdRequest implements android.os.Parcelable {
267    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
268    method @NonNull public java.util.Set<java.lang.String> getIds();
269    method @NonNull public String getNamespace();
270    method @NonNull public java.util.Map<java.lang.String,java.util.List<android.app.appsearch.PropertyPath>> getProjectionPaths();
271    method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getProjections();
272    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
273    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.GetByDocumentIdRequest> CREATOR;
274    field public static final String PROJECTION_SCHEMA_TYPE_WILDCARD = "*";
275  }
276
277  public static final class GetByDocumentIdRequest.Builder {
278    ctor public GetByDocumentIdRequest.Builder(@NonNull String);
279    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addIds(@NonNull java.lang.String...);
280    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addIds(@NonNull java.util.Collection<java.lang.String>);
281    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addProjection(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
282    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addProjectionPaths(@NonNull String, @NonNull java.util.Collection<android.app.appsearch.PropertyPath>);
283    method @NonNull public android.app.appsearch.GetByDocumentIdRequest build();
284  }
285
286  public final class GetSchemaResponse implements android.os.Parcelable {
287    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
288    method @FlaggedApi("com.android.appsearch.flags.enable_set_publicly_visible_schema") @NonNull public java.util.Map<java.lang.String,android.app.appsearch.PackageIdentifier> getPubliclyVisibleSchemas();
289    method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.util.Set<java.lang.Integer>>> getRequiredPermissionsForSchemaTypeVisibility();
290    method @NonNull public java.util.Set<java.lang.String> getSchemaTypesNotDisplayedBySystem();
291    method @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.SchemaVisibilityConfig>> getSchemaTypesVisibleToConfigs();
292    method @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.PackageIdentifier>> getSchemaTypesVisibleToPackages();
293    method @NonNull public java.util.Set<android.app.appsearch.AppSearchSchema> getSchemas();
294    method @IntRange(from=0) public int getVersion();
295    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
296    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.GetSchemaResponse> CREATOR;
297  }
298
299  public static final class GetSchemaResponse.Builder {
300    ctor public GetSchemaResponse.Builder();
301    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder addSchema(@NonNull android.app.appsearch.AppSearchSchema);
302    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder addSchemaTypeNotDisplayedBySystem(@NonNull String);
303    method @NonNull public android.app.appsearch.GetSchemaResponse build();
304    method @FlaggedApi("com.android.appsearch.flags.enable_set_publicly_visible_schema") @NonNull public android.app.appsearch.GetSchemaResponse.Builder setPubliclyVisibleSchema(@NonNull String, @NonNull android.app.appsearch.PackageIdentifier);
305    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setRequiredPermissionsForSchemaTypeVisibility(@NonNull String, @NonNull java.util.Set<java.util.Set<java.lang.Integer>>);
306    method @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") @NonNull public android.app.appsearch.GetSchemaResponse.Builder setSchemaTypeVisibleToConfigs(@NonNull String, @NonNull java.util.Set<android.app.appsearch.SchemaVisibilityConfig>);
307    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setSchemaTypeVisibleToPackages(@NonNull String, @NonNull java.util.Set<android.app.appsearch.PackageIdentifier>);
308    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setVersion(@IntRange(from=0) int);
309  }
310
311  public class GlobalSearchSession implements java.io.Closeable {
312    method public void close();
313    method public void getByDocumentId(@NonNull String, @NonNull String, @NonNull android.app.appsearch.GetByDocumentIdRequest, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.BatchResultCallback<java.lang.String,android.app.appsearch.GenericDocument>);
314    method public void getSchema(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>>);
315    method public void registerObserverCallback(@NonNull String, @NonNull android.app.appsearch.observer.ObserverSpec, @NonNull java.util.concurrent.Executor, @NonNull android.app.appsearch.observer.ObserverCallback) throws android.app.appsearch.exceptions.AppSearchException;
316    method public void reportSystemUsage(@NonNull android.app.appsearch.ReportSystemUsageRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.lang.Void>>);
317    method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
318    method public void unregisterObserverCallback(@NonNull String, @NonNull android.app.appsearch.observer.ObserverCallback) throws android.app.appsearch.exceptions.AppSearchException;
319  }
320
321  public final class JoinSpec implements android.os.Parcelable {
322    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
323    method public int getAggregationScoringStrategy();
324    method @NonNull public String getChildPropertyExpression();
325    method public int getMaxJoinedResultCount();
326    method @NonNull public String getNestedQuery();
327    method @NonNull public android.app.appsearch.SearchSpec getNestedSearchSpec();
328    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
329    field public static final int AGGREGATION_SCORING_AVG_RANKING_SIGNAL = 3; // 0x3
330    field public static final int AGGREGATION_SCORING_MAX_RANKING_SIGNAL = 4; // 0x4
331    field public static final int AGGREGATION_SCORING_MIN_RANKING_SIGNAL = 2; // 0x2
332    field public static final int AGGREGATION_SCORING_OUTER_RESULT_RANKING_SIGNAL = 0; // 0x0
333    field public static final int AGGREGATION_SCORING_RESULT_COUNT = 1; // 0x1
334    field public static final int AGGREGATION_SCORING_SUM_RANKING_SIGNAL = 5; // 0x5
335    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.JoinSpec> CREATOR;
336  }
337
338  public static final class JoinSpec.Builder {
339    ctor public JoinSpec.Builder(@NonNull String);
340    method @NonNull public android.app.appsearch.JoinSpec build();
341    method @NonNull public android.app.appsearch.JoinSpec.Builder setAggregationScoringStrategy(int);
342    method @NonNull public android.app.appsearch.JoinSpec.Builder setMaxJoinedResultCount(int);
343    method @NonNull public android.app.appsearch.JoinSpec.Builder setNestedSearch(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
344  }
345
346  public abstract class Migrator {
347    ctor public Migrator();
348    method @NonNull @WorkerThread public abstract android.app.appsearch.GenericDocument onDowngrade(int, int, @NonNull android.app.appsearch.GenericDocument);
349    method @NonNull @WorkerThread public abstract android.app.appsearch.GenericDocument onUpgrade(int, int, @NonNull android.app.appsearch.GenericDocument);
350    method public abstract boolean shouldMigrate(int, int);
351  }
352
353  public class PackageIdentifier {
354    ctor public PackageIdentifier(@NonNull String, @NonNull byte[]);
355    method @NonNull public String getPackageName();
356    method @NonNull public byte[] getSha256Certificate();
357  }
358
359  public class PropertyPath implements java.lang.Iterable<android.app.appsearch.PropertyPath.PathSegment> {
360    ctor public PropertyPath(@NonNull java.util.List<android.app.appsearch.PropertyPath.PathSegment>);
361    ctor public PropertyPath(@NonNull String);
362    method @NonNull public android.app.appsearch.PropertyPath.PathSegment get(int);
363    method @NonNull public java.util.Iterator<android.app.appsearch.PropertyPath.PathSegment> iterator();
364    method public int size();
365  }
366
367  public static class PropertyPath.PathSegment {
368    method @NonNull public static android.app.appsearch.PropertyPath.PathSegment create(@NonNull String, int);
369    method @NonNull public static android.app.appsearch.PropertyPath.PathSegment create(@NonNull String);
370    method public int getPropertyIndex();
371    method @NonNull public String getPropertyName();
372    field public static final int NON_REPEATED_CARDINALITY = -1; // 0xffffffff
373  }
374
375  public final class PutDocumentsRequest {
376    method @NonNull public java.util.List<android.app.appsearch.GenericDocument> getGenericDocuments();
377    method @FlaggedApi("com.android.appsearch.flags.enable_put_documents_request_add_taken_actions") @NonNull public java.util.List<android.app.appsearch.GenericDocument> getTakenActionGenericDocuments();
378  }
379
380  public static final class PutDocumentsRequest.Builder {
381    ctor public PutDocumentsRequest.Builder();
382    method @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addGenericDocuments(@NonNull android.app.appsearch.GenericDocument...);
383    method @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addGenericDocuments(@NonNull java.util.Collection<? extends android.app.appsearch.GenericDocument>);
384    method @FlaggedApi("com.android.appsearch.flags.enable_put_documents_request_add_taken_actions") @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addTakenActionGenericDocuments(@NonNull android.app.appsearch.GenericDocument...) throws android.app.appsearch.exceptions.AppSearchException;
385    method @FlaggedApi("com.android.appsearch.flags.enable_put_documents_request_add_taken_actions") @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addTakenActionGenericDocuments(@NonNull java.util.Collection<? extends android.app.appsearch.GenericDocument>) throws android.app.appsearch.exceptions.AppSearchException;
386    method @NonNull public android.app.appsearch.PutDocumentsRequest build();
387  }
388
389  public final class RemoveByDocumentIdRequest implements android.os.Parcelable {
390    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
391    method @NonNull public java.util.Set<java.lang.String> getIds();
392    method @NonNull public String getNamespace();
393    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
394    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.RemoveByDocumentIdRequest> CREATOR;
395  }
396
397  public static final class RemoveByDocumentIdRequest.Builder {
398    ctor public RemoveByDocumentIdRequest.Builder(@NonNull String);
399    method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest.Builder addIds(@NonNull java.lang.String...);
400    method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest.Builder addIds(@NonNull java.util.Collection<java.lang.String>);
401    method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest build();
402  }
403
404  public final class ReportSystemUsageRequest {
405    method @NonNull public String getDatabaseName();
406    method @NonNull public String getDocumentId();
407    method @NonNull public String getNamespace();
408    method @NonNull public String getPackageName();
409    method public long getUsageTimestampMillis();
410  }
411
412  public static final class ReportSystemUsageRequest.Builder {
413    ctor public ReportSystemUsageRequest.Builder(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
414    method @NonNull public android.app.appsearch.ReportSystemUsageRequest build();
415    method @NonNull public android.app.appsearch.ReportSystemUsageRequest.Builder setUsageTimestampMillis(long);
416  }
417
418  public final class ReportUsageRequest implements android.os.Parcelable {
419    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
420    method @NonNull public String getDocumentId();
421    method @NonNull public String getNamespace();
422    method public long getUsageTimestampMillis();
423    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
424    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.ReportUsageRequest> CREATOR;
425  }
426
427  public static final class ReportUsageRequest.Builder {
428    ctor public ReportUsageRequest.Builder(@NonNull String, @NonNull String);
429    method @NonNull public android.app.appsearch.ReportUsageRequest build();
430    method @NonNull public android.app.appsearch.ReportUsageRequest.Builder setUsageTimestampMillis(long);
431  }
432
433  @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") public final class SchemaVisibilityConfig implements android.os.Parcelable {
434    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
435    method @NonNull public java.util.List<android.app.appsearch.PackageIdentifier> getAllowedPackages();
436    method @Nullable public android.app.appsearch.PackageIdentifier getPubliclyVisibleTargetPackage();
437    method @NonNull public java.util.Set<java.util.Set<java.lang.Integer>> getRequiredPermissions();
438    method public void writeToParcel(@NonNull android.os.Parcel, int);
439    field @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SchemaVisibilityConfig> CREATOR;
440  }
441
442  @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") public static final class SchemaVisibilityConfig.Builder {
443    ctor public SchemaVisibilityConfig.Builder();
444    method @NonNull public android.app.appsearch.SchemaVisibilityConfig.Builder addAllowedPackage(@NonNull android.app.appsearch.PackageIdentifier);
445    method @NonNull public android.app.appsearch.SchemaVisibilityConfig.Builder addRequiredPermissions(@NonNull java.util.Set<java.lang.Integer>);
446    method @NonNull public android.app.appsearch.SchemaVisibilityConfig build();
447    method @NonNull public android.app.appsearch.SchemaVisibilityConfig.Builder clearAllowedPackages();
448    method @NonNull public android.app.appsearch.SchemaVisibilityConfig.Builder clearRequiredPermissions();
449    method @NonNull public android.app.appsearch.SchemaVisibilityConfig.Builder setPubliclyVisibleTargetPackage(@Nullable android.app.appsearch.PackageIdentifier);
450  }
451
452  public final class SearchResult implements android.os.Parcelable {
453    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
454    method @NonNull public String getDatabaseName();
455    method @NonNull public android.app.appsearch.GenericDocument getGenericDocument();
456    method @FlaggedApi("com.android.appsearch.flags.enable_informational_ranking_expressions") @NonNull public java.util.List<java.lang.Double> getInformationalRankingSignals();
457    method @NonNull public java.util.List<android.app.appsearch.SearchResult> getJoinedResults();
458    method @NonNull public java.util.List<android.app.appsearch.SearchResult.MatchInfo> getMatchInfos();
459    method @NonNull public String getPackageName();
460    method public double getRankingSignal();
461    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
462    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SearchResult> CREATOR;
463  }
464
465  public static final class SearchResult.Builder {
466    ctor public SearchResult.Builder(@NonNull String, @NonNull String);
467    method @FlaggedApi("com.android.appsearch.flags.enable_informational_ranking_expressions") @NonNull public android.app.appsearch.SearchResult.Builder addInformationalRankingSignal(double);
468    method @NonNull public android.app.appsearch.SearchResult.Builder addJoinedResult(@NonNull android.app.appsearch.SearchResult);
469    method @NonNull public android.app.appsearch.SearchResult.Builder addMatchInfo(@NonNull android.app.appsearch.SearchResult.MatchInfo);
470    method @NonNull public android.app.appsearch.SearchResult build();
471    method @NonNull public android.app.appsearch.SearchResult.Builder setGenericDocument(@NonNull android.app.appsearch.GenericDocument);
472    method @NonNull public android.app.appsearch.SearchResult.Builder setRankingSignal(double);
473  }
474
475  public static final class SearchResult.MatchInfo implements android.os.Parcelable {
476    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
477    method @NonNull public CharSequence getExactMatch();
478    method @NonNull public android.app.appsearch.SearchResult.MatchRange getExactMatchRange();
479    method @NonNull public String getFullText();
480    method @NonNull public String getPropertyPath();
481    method @NonNull public android.app.appsearch.PropertyPath getPropertyPathObject();
482    method @NonNull public CharSequence getSnippet();
483    method @NonNull public android.app.appsearch.SearchResult.MatchRange getSnippetRange();
484    method @NonNull public CharSequence getSubmatch();
485    method @NonNull public android.app.appsearch.SearchResult.MatchRange getSubmatchRange();
486    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
487    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SearchResult.MatchInfo> CREATOR;
488  }
489
490  public static final class SearchResult.MatchInfo.Builder {
491    ctor public SearchResult.MatchInfo.Builder(@NonNull String);
492    method @NonNull public android.app.appsearch.SearchResult.MatchInfo build();
493    method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setExactMatchRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
494    method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setSnippetRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
495    method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setSubmatchRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
496  }
497
498  public static final class SearchResult.MatchRange {
499    ctor public SearchResult.MatchRange(int, int);
500    method public int getEnd();
501    method public int getStart();
502  }
503
504  public class SearchResults implements java.io.Closeable {
505    method public void close();
506    method public void getNextPage(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.List<android.app.appsearch.SearchResult>>>);
507  }
508
509  public final class SearchSpec implements android.os.Parcelable {
510    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
511    method @NonNull public String getAdvancedRankingExpression();
512    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public int getDefaultEmbeddingSearchMetricType();
513    method @NonNull public java.util.List<java.lang.String> getFilterNamespaces();
514    method @NonNull public java.util.List<java.lang.String> getFilterPackageNames();
515    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getFilterProperties();
516    method @NonNull public java.util.List<java.lang.String> getFilterSchemas();
517    method @FlaggedApi("com.android.appsearch.flags.enable_informational_ranking_expressions") @NonNull public java.util.List<java.lang.String> getInformationalRankingExpressions();
518    method @Nullable public android.app.appsearch.JoinSpec getJoinSpec();
519    method public int getMaxSnippetSize();
520    method public int getOrder();
521    method @NonNull public java.util.Map<java.lang.String,java.util.List<android.app.appsearch.PropertyPath>> getProjectionPaths();
522    method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getProjections();
523    method @NonNull public java.util.Map<java.lang.String,java.util.Map<android.app.appsearch.PropertyPath,java.lang.Double>> getPropertyWeightPaths();
524    method @NonNull public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Double>> getPropertyWeights();
525    method public int getRankingStrategy();
526    method public int getResultCountPerPage();
527    method public int getResultGroupingLimit();
528    method public int getResultGroupingTypeFlags();
529    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @NonNull public java.util.List<android.app.appsearch.EmbeddingVector> getSearchEmbeddings();
530    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_set_search_source_log_tag") @Nullable public String getSearchSourceLogTag();
531    method public int getSnippetCount();
532    method public int getSnippetCountPerProperty();
533    method public int getTermMatch();
534    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public boolean isEmbeddingSearchEnabled();
535    method @FlaggedApi("com.android.appsearch.flags.enable_list_filter_has_property_function") public boolean isListFilterHasPropertyFunctionEnabled();
536    method public boolean isListFilterQueryLanguageEnabled();
537    method @FlaggedApi("com.android.appsearch.flags.enable_list_filter_tokenize_function") public boolean isListFilterTokenizeFunctionEnabled();
538    method public boolean isNumericSearchEnabled();
539    method public boolean isVerbatimSearchEnabled();
540    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
541    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SearchSpec> CREATOR;
542    field @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public static final int EMBEDDING_SEARCH_METRIC_TYPE_COSINE = 1; // 0x1
543    field @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public static final int EMBEDDING_SEARCH_METRIC_TYPE_DOT_PRODUCT = 2; // 0x2
544    field @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") public static final int EMBEDDING_SEARCH_METRIC_TYPE_EUCLIDEAN = 3; // 0x3
545    field public static final int GROUPING_TYPE_PER_NAMESPACE = 2; // 0x2
546    field public static final int GROUPING_TYPE_PER_PACKAGE = 1; // 0x1
547    field @FlaggedApi("com.android.appsearch.flags.enable_grouping_type_per_schema") public static final int GROUPING_TYPE_PER_SCHEMA = 4; // 0x4
548    field public static final int ORDER_ASCENDING = 1; // 0x1
549    field public static final int ORDER_DESCENDING = 0; // 0x0
550    field @Deprecated public static final String PROJECTION_SCHEMA_TYPE_WILDCARD = "*";
551    field public static final int RANKING_STRATEGY_ADVANCED_RANKING_EXPRESSION = 9; // 0x9
552    field public static final int RANKING_STRATEGY_CREATION_TIMESTAMP = 2; // 0x2
553    field public static final int RANKING_STRATEGY_DOCUMENT_SCORE = 1; // 0x1
554    field public static final int RANKING_STRATEGY_JOIN_AGGREGATE_SCORE = 8; // 0x8
555    field public static final int RANKING_STRATEGY_NONE = 0; // 0x0
556    field public static final int RANKING_STRATEGY_RELEVANCE_SCORE = 3; // 0x3
557    field public static final int RANKING_STRATEGY_SYSTEM_USAGE_COUNT = 6; // 0x6
558    field public static final int RANKING_STRATEGY_SYSTEM_USAGE_LAST_USED_TIMESTAMP = 7; // 0x7
559    field public static final int RANKING_STRATEGY_USAGE_COUNT = 4; // 0x4
560    field public static final int RANKING_STRATEGY_USAGE_LAST_USED_TIMESTAMP = 5; // 0x5
561    field @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") public static final String SCHEMA_TYPE_WILDCARD = "*";
562    field public static final int TERM_MATCH_EXACT_ONLY = 1; // 0x1
563    field public static final int TERM_MATCH_PREFIX = 2; // 0x2
564  }
565
566  public static final class SearchSpec.Builder {
567    ctor public SearchSpec.Builder();
568    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterNamespaces(@NonNull java.lang.String...);
569    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterNamespaces(@NonNull java.util.Collection<java.lang.String>);
570    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPackageNames(@NonNull java.lang.String...);
571    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPackageNames(@NonNull java.util.Collection<java.lang.String>);
572    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") @NonNull public android.app.appsearch.SearchSpec.Builder addFilterProperties(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
573    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPropertyPaths(@NonNull String, @NonNull java.util.Collection<android.app.appsearch.PropertyPath>);
574    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterSchemas(@NonNull java.lang.String...);
575    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterSchemas(@NonNull java.util.Collection<java.lang.String>);
576    method @FlaggedApi("com.android.appsearch.flags.enable_informational_ranking_expressions") @NonNull public android.app.appsearch.SearchSpec.Builder addInformationalRankingExpressions(@NonNull java.lang.String...);
577    method @FlaggedApi("com.android.appsearch.flags.enable_informational_ranking_expressions") @NonNull public android.app.appsearch.SearchSpec.Builder addInformationalRankingExpressions(@NonNull java.util.Collection<java.lang.String>);
578    method @NonNull public android.app.appsearch.SearchSpec.Builder addProjection(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
579    method @NonNull public android.app.appsearch.SearchSpec.Builder addProjectionPaths(@NonNull String, @NonNull java.util.Collection<android.app.appsearch.PropertyPath>);
580    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @NonNull public android.app.appsearch.SearchSpec.Builder addSearchEmbeddings(@NonNull android.app.appsearch.EmbeddingVector...);
581    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @NonNull public android.app.appsearch.SearchSpec.Builder addSearchEmbeddings(@NonNull java.util.Collection<android.app.appsearch.EmbeddingVector>);
582    method @NonNull public android.app.appsearch.SearchSpec build();
583    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @NonNull public android.app.appsearch.SearchSpec.Builder setDefaultEmbeddingSearchMetricType(int);
584    method @FlaggedApi("com.android.appsearch.flags.enable_schema_embedding_property_config") @NonNull public android.app.appsearch.SearchSpec.Builder setEmbeddingSearchEnabled(boolean);
585    method @NonNull public android.app.appsearch.SearchSpec.Builder setJoinSpec(@NonNull android.app.appsearch.JoinSpec);
586    method @FlaggedApi("com.android.appsearch.flags.enable_list_filter_has_property_function") @NonNull public android.app.appsearch.SearchSpec.Builder setListFilterHasPropertyFunctionEnabled(boolean);
587    method @NonNull public android.app.appsearch.SearchSpec.Builder setListFilterQueryLanguageEnabled(boolean);
588    method @FlaggedApi("com.android.appsearch.flags.enable_list_filter_tokenize_function") @NonNull public android.app.appsearch.SearchSpec.Builder setListFilterTokenizeFunctionEnabled(boolean);
589    method @NonNull public android.app.appsearch.SearchSpec.Builder setMaxSnippetSize(@IntRange(from=0, to=0x2710) int);
590    method @NonNull public android.app.appsearch.SearchSpec.Builder setNumericSearchEnabled(boolean);
591    method @NonNull public android.app.appsearch.SearchSpec.Builder setOrder(int);
592    method @NonNull public android.app.appsearch.SearchSpec.Builder setPropertyWeightPaths(@NonNull String, @NonNull java.util.Map<android.app.appsearch.PropertyPath,java.lang.Double>);
593    method @NonNull public android.app.appsearch.SearchSpec.Builder setPropertyWeights(@NonNull String, @NonNull java.util.Map<java.lang.String,java.lang.Double>);
594    method @NonNull public android.app.appsearch.SearchSpec.Builder setRankingStrategy(int);
595    method @NonNull public android.app.appsearch.SearchSpec.Builder setRankingStrategy(@NonNull String);
596    method @NonNull public android.app.appsearch.SearchSpec.Builder setResultCountPerPage(@IntRange(from=0, to=0x2710) int);
597    method @NonNull public android.app.appsearch.SearchSpec.Builder setResultGrouping(int, int);
598    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_set_search_source_log_tag") @NonNull public android.app.appsearch.SearchSpec.Builder setSearchSourceLogTag(@NonNull String);
599    method @NonNull public android.app.appsearch.SearchSpec.Builder setSnippetCount(@IntRange(from=0, to=0x2710) int);
600    method @NonNull public android.app.appsearch.SearchSpec.Builder setSnippetCountPerProperty(@IntRange(from=0, to=0x2710) int);
601    method @NonNull public android.app.appsearch.SearchSpec.Builder setTermMatch(int);
602    method @NonNull public android.app.appsearch.SearchSpec.Builder setVerbatimSearchEnabled(boolean);
603  }
604
605  public final class SearchSuggestionResult implements android.os.Parcelable {
606    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
607    method @NonNull public String getSuggestedResult();
608    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
609    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SearchSuggestionResult> CREATOR;
610  }
611
612  public static final class SearchSuggestionResult.Builder {
613    ctor public SearchSuggestionResult.Builder();
614    method @NonNull public android.app.appsearch.SearchSuggestionResult build();
615    method @NonNull public android.app.appsearch.SearchSuggestionResult.Builder setSuggestedResult(@NonNull String);
616  }
617
618  public final class SearchSuggestionSpec implements android.os.Parcelable {
619    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
620    method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getFilterDocumentIds();
621    method @NonNull public java.util.List<java.lang.String> getFilterNamespaces();
622    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getFilterProperties();
623    method @NonNull public java.util.List<java.lang.String> getFilterSchemas();
624    method public int getMaximumResultCount();
625    method public int getRankingStrategy();
626    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
627    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SearchSuggestionSpec> CREATOR;
628    field public static final int SUGGESTION_RANKING_STRATEGY_DOCUMENT_COUNT = 0; // 0x0
629    field public static final int SUGGESTION_RANKING_STRATEGY_NONE = 2; // 0x2
630    field public static final int SUGGESTION_RANKING_STRATEGY_TERM_FREQUENCY = 1; // 0x1
631  }
632
633  public static final class SearchSuggestionSpec.Builder {
634    ctor public SearchSuggestionSpec.Builder(@IntRange(from=1) int);
635    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterDocumentIds(@NonNull String, @NonNull java.lang.String...);
636    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterDocumentIds(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
637    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterNamespaces(@NonNull java.lang.String...);
638    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterNamespaces(@NonNull java.util.Collection<java.lang.String>);
639    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterProperties(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
640    method @FlaggedApi("com.android.appsearch.flags.enable_search_spec_filter_properties") @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterPropertyPaths(@NonNull String, @NonNull java.util.Collection<android.app.appsearch.PropertyPath>);
641    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterSchemas(@NonNull java.lang.String...);
642    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder addFilterSchemas(@NonNull java.util.Collection<java.lang.String>);
643    method @NonNull public android.app.appsearch.SearchSuggestionSpec build();
644    method @NonNull public android.app.appsearch.SearchSuggestionSpec.Builder setRankingStrategy(int);
645  }
646
647  public final class SetSchemaRequest {
648    method @NonNull public java.util.Map<java.lang.String,android.app.appsearch.Migrator> getMigrators();
649    method @FlaggedApi("com.android.appsearch.flags.enable_set_publicly_visible_schema") @NonNull public java.util.Map<java.lang.String,android.app.appsearch.PackageIdentifier> getPubliclyVisibleSchemas();
650    method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.util.Set<java.lang.Integer>>> getRequiredPermissionsForSchemaTypeVisibility();
651    method @NonNull public java.util.Set<android.app.appsearch.AppSearchSchema> getSchemas();
652    method @NonNull public java.util.Set<java.lang.String> getSchemasNotDisplayedBySystem();
653    method @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.SchemaVisibilityConfig>> getSchemasVisibleToConfigs();
654    method @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.PackageIdentifier>> getSchemasVisibleToPackages();
655    method @IntRange(from=1) public int getVersion();
656    method public boolean isForceOverride();
657    field public static final int READ_ASSISTANT_APP_SEARCH_DATA = 6; // 0x6
658    field public static final int READ_CALENDAR = 2; // 0x2
659    field public static final int READ_CONTACTS = 3; // 0x3
660    field public static final int READ_EXTERNAL_STORAGE = 4; // 0x4
661    field public static final int READ_HOME_APP_SEARCH_DATA = 5; // 0x5
662    field public static final int READ_SMS = 1; // 0x1
663  }
664
665  public static final class SetSchemaRequest.Builder {
666    ctor public SetSchemaRequest.Builder();
667    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addRequiredPermissionsForSchemaTypeVisibility(@NonNull String, @NonNull java.util.Set<java.lang.Integer>);
668    method @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemaTypeVisibleToConfig(@NonNull String, @NonNull android.app.appsearch.SchemaVisibilityConfig);
669    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemas(@NonNull android.app.appsearch.AppSearchSchema...);
670    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemas(@NonNull java.util.Collection<android.app.appsearch.AppSearchSchema>);
671    method @NonNull public android.app.appsearch.SetSchemaRequest build();
672    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder clearRequiredPermissionsForSchemaTypeVisibility(@NonNull String);
673    method @FlaggedApi("com.android.appsearch.flags.enable_set_schema_visible_to_configs") @NonNull public android.app.appsearch.SetSchemaRequest.Builder clearSchemaTypeVisibleToConfigs(@NonNull String);
674    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setForceOverride(boolean);
675    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setMigrator(@NonNull String, @NonNull android.app.appsearch.Migrator);
676    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setMigrators(@NonNull java.util.Map<java.lang.String,android.app.appsearch.Migrator>);
677    method @FlaggedApi("com.android.appsearch.flags.enable_set_publicly_visible_schema") @NonNull public android.app.appsearch.SetSchemaRequest.Builder setPubliclyVisibleSchema(@NonNull String, @Nullable android.app.appsearch.PackageIdentifier);
678    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setSchemaTypeDisplayedBySystem(@NonNull String, boolean);
679    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setSchemaTypeVisibilityForPackage(@NonNull String, boolean, @NonNull android.app.appsearch.PackageIdentifier);
680    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setVersion(@IntRange(from=1) int);
681  }
682
683  public final class SetSchemaResponse implements android.os.Parcelable {
684    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
685    method @NonNull public java.util.Set<java.lang.String> getDeletedTypes();
686    method @NonNull public java.util.Set<java.lang.String> getIncompatibleTypes();
687    method @NonNull public java.util.Set<java.lang.String> getMigratedTypes();
688    method @NonNull public java.util.List<android.app.appsearch.SetSchemaResponse.MigrationFailure> getMigrationFailures();
689    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
690    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SetSchemaResponse> CREATOR;
691  }
692
693  public static final class SetSchemaResponse.Builder {
694    ctor public SetSchemaResponse.Builder();
695    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addDeletedType(@NonNull String);
696    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addDeletedTypes(@NonNull java.util.Collection<java.lang.String>);
697    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addIncompatibleType(@NonNull String);
698    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addIncompatibleTypes(@NonNull java.util.Collection<java.lang.String>);
699    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigratedType(@NonNull String);
700    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigratedTypes(@NonNull java.util.Collection<java.lang.String>);
701    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigrationFailure(@NonNull android.app.appsearch.SetSchemaResponse.MigrationFailure);
702    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigrationFailures(@NonNull java.util.Collection<android.app.appsearch.SetSchemaResponse.MigrationFailure>);
703    method @NonNull public android.app.appsearch.SetSchemaResponse build();
704  }
705
706  public static class SetSchemaResponse.MigrationFailure implements android.os.Parcelable {
707    ctor public SetSchemaResponse.MigrationFailure(@NonNull String, @NonNull String, @NonNull String, @NonNull android.app.appsearch.AppSearchResult<?>);
708    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
709    method @NonNull public android.app.appsearch.AppSearchResult<java.lang.Void> getAppSearchResult();
710    method @NonNull public String getDocumentId();
711    method @NonNull public String getNamespace();
712    method @NonNull public String getSchemaType();
713    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
714    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.SetSchemaResponse.MigrationFailure> CREATOR;
715  }
716
717  public final class StorageInfo implements android.os.Parcelable {
718    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
719    method public int getAliveDocumentsCount();
720    method public int getAliveNamespacesCount();
721    method public long getSizeBytes();
722    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
723    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.StorageInfo> CREATOR;
724  }
725
726  public static final class StorageInfo.Builder {
727    ctor public StorageInfo.Builder();
728    method @NonNull public android.app.appsearch.StorageInfo build();
729    method @NonNull public android.app.appsearch.StorageInfo.Builder setAliveDocumentsCount(int);
730    method @NonNull public android.app.appsearch.StorageInfo.Builder setAliveNamespacesCount(int);
731    method @NonNull public android.app.appsearch.StorageInfo.Builder setSizeBytes(long);
732  }
733
734}
735
736package android.app.appsearch.exceptions {
737
738  public class AppSearchException extends java.lang.Exception {
739    ctor public AppSearchException(int);
740    ctor public AppSearchException(int, @Nullable String);
741    ctor public AppSearchException(int, @Nullable String, @Nullable Throwable);
742    method public int getResultCode();
743    method @NonNull public <T> android.app.appsearch.AppSearchResult<T> toAppSearchResult();
744  }
745
746}
747
748package android.app.appsearch.functions {
749
750  @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public final class AppFunctionManager {
751    method public void executeAppFunction(@NonNull android.app.appsearch.functions.ExecuteAppFunctionRequest, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.functions.ExecuteAppFunctionResponse>>);
752    field public static final String PERMISSION_BIND_APP_FUNCTION_SERVICE = "android.permission.BIND_APP_FUNCTION_SERVICE";
753  }
754
755  @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public abstract class AppFunctionService extends android.app.Service {
756    ctor public AppFunctionService();
757    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
758    method @MainThread public abstract void onExecuteFunction(@NonNull android.app.appsearch.functions.ExecuteAppFunctionRequest, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.functions.ExecuteAppFunctionResponse>>);
759    field @NonNull public static final String SERVICE_INTERFACE = "android.app.appsearch.functions.AppFunctionService";
760  }
761
762  @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public final class ExecuteAppFunctionRequest implements android.os.Parcelable {
763    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
764    method @NonNull public android.os.Bundle getExtras();
765    method @NonNull public String getFunctionIdentifier();
766    method @NonNull public android.app.appsearch.GenericDocument getParameters();
767    method @Nullable public byte[] getSha256Certificate();
768    method @NonNull public String getTargetPackageName();
769    method public void writeToParcel(@NonNull android.os.Parcel, int);
770    field @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.functions.ExecuteAppFunctionRequest> CREATOR;
771  }
772
773  @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public static final class ExecuteAppFunctionRequest.Builder {
774    ctor public ExecuteAppFunctionRequest.Builder(@NonNull String, @NonNull String);
775    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionRequest build();
776    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionRequest.Builder setExtras(@NonNull android.os.Bundle);
777    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionRequest.Builder setParameters(@NonNull android.app.appsearch.GenericDocument);
778    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionRequest.Builder setSha256Certificate(@Nullable byte[]);
779  }
780
781  @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public final class ExecuteAppFunctionResponse implements android.os.Parcelable {
782    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
783    method @NonNull public android.os.Bundle getExtras();
784    method @NonNull public android.app.appsearch.GenericDocument getResult();
785    method public void writeToParcel(@NonNull android.os.Parcel, int);
786    field @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.functions.ExecuteAppFunctionResponse> CREATOR;
787    field public static final String PROPERTY_RESULT = "result";
788  }
789
790  @FlaggedApi("com.android.appsearch.flags.enable_app_functions") public static final class ExecuteAppFunctionResponse.Builder {
791    ctor public ExecuteAppFunctionResponse.Builder();
792    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionResponse build();
793    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionResponse.Builder setExtras(@NonNull android.os.Bundle);
794    method @NonNull public android.app.appsearch.functions.ExecuteAppFunctionResponse.Builder setResult(@NonNull android.app.appsearch.GenericDocument);
795  }
796
797}
798
799package android.app.appsearch.observer {
800
801  public final class DocumentChangeInfo {
802    ctor public DocumentChangeInfo(@NonNull String, @NonNull String, @NonNull String, @NonNull String, @NonNull java.util.Set<java.lang.String>);
803    method @NonNull public java.util.Set<java.lang.String> getChangedDocumentIds();
804    method @NonNull public String getDatabaseName();
805    method @NonNull public String getNamespace();
806    method @NonNull public String getPackageName();
807    method @NonNull public String getSchemaName();
808  }
809
810  public interface ObserverCallback {
811    method public void onDocumentChanged(@NonNull android.app.appsearch.observer.DocumentChangeInfo);
812    method public void onSchemaChanged(@NonNull android.app.appsearch.observer.SchemaChangeInfo);
813  }
814
815  public final class ObserverSpec implements android.os.Parcelable {
816    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public final int describeContents();
817    method @NonNull public java.util.Set<java.lang.String> getFilterSchemas();
818    method @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") public void writeToParcel(@NonNull android.os.Parcel, int);
819    field @FlaggedApi("com.android.appsearch.flags.enable_safe_parcelable_2") @NonNull public static final android.os.Parcelable.Creator<android.app.appsearch.observer.ObserverSpec> CREATOR;
820  }
821
822  public static final class ObserverSpec.Builder {
823    ctor public ObserverSpec.Builder();
824    method @NonNull public android.app.appsearch.observer.ObserverSpec.Builder addFilterSchemas(@NonNull java.lang.String...);
825    method @NonNull public android.app.appsearch.observer.ObserverSpec.Builder addFilterSchemas(@NonNull java.util.Collection<java.lang.String>);
826    method @NonNull public android.app.appsearch.observer.ObserverSpec build();
827  }
828
829  public final class SchemaChangeInfo {
830    ctor public SchemaChangeInfo(@NonNull String, @NonNull String, @NonNull java.util.Set<java.lang.String>);
831    method @NonNull public java.util.Set<java.lang.String> getChangedSchemaNames();
832    method @NonNull public String getDatabaseName();
833    method @NonNull public String getPackageName();
834  }
835
836}
837
838package android.app.appsearch.util {
839
840  public class DocumentIdUtil {
841    method @NonNull public static String createQualifiedId(@NonNull String, @NonNull String, @NonNull android.app.appsearch.GenericDocument);
842    method @NonNull public static String createQualifiedId(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
843  }
844
845}
846
847