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