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 createGlobalSearchSession(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GlobalSearchSession>>);
21    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>>);
22  }
23
24  public static final class AppSearchManager.SearchContext {
25    method @NonNull public String getDatabaseName();
26  }
27
28  public static final class AppSearchManager.SearchContext.Builder {
29    ctor public AppSearchManager.SearchContext.Builder(@NonNull String);
30    method @NonNull public android.app.appsearch.AppSearchManager.SearchContext build();
31  }
32
33  public final class AppSearchResult<ValueType> {
34    method @Nullable public String getErrorMessage();
35    method public int getResultCode();
36    method @Nullable public ValueType getResultValue();
37    method public boolean isSuccess();
38    method @NonNull public static <ValueType> android.app.appsearch.AppSearchResult<ValueType> newFailedResult(int, @Nullable String);
39    method @NonNull public static <ValueType> android.app.appsearch.AppSearchResult<ValueType> newSuccessfulResult(@Nullable ValueType);
40    field public static final int RESULT_INTERNAL_ERROR = 2; // 0x2
41    field public static final int RESULT_INVALID_ARGUMENT = 3; // 0x3
42    field public static final int RESULT_INVALID_SCHEMA = 7; // 0x7
43    field public static final int RESULT_IO_ERROR = 4; // 0x4
44    field public static final int RESULT_NOT_FOUND = 6; // 0x6
45    field public static final int RESULT_OK = 0; // 0x0
46    field public static final int RESULT_OUT_OF_SPACE = 5; // 0x5
47    field public static final int RESULT_SECURITY_ERROR = 8; // 0x8
48    field public static final int RESULT_UNKNOWN_ERROR = 1; // 0x1
49  }
50
51  public final class AppSearchSchema {
52    method @NonNull public java.util.List<android.app.appsearch.AppSearchSchema.PropertyConfig> getProperties();
53    method @NonNull public String getSchemaType();
54  }
55
56  public static final class AppSearchSchema.BooleanPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
57  }
58
59  public static final class AppSearchSchema.BooleanPropertyConfig.Builder {
60    ctor public AppSearchSchema.BooleanPropertyConfig.Builder(@NonNull String);
61    method @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig build();
62    method @NonNull public android.app.appsearch.AppSearchSchema.BooleanPropertyConfig.Builder setCardinality(int);
63  }
64
65  public static final class AppSearchSchema.Builder {
66    ctor public AppSearchSchema.Builder(@NonNull String);
67    method @NonNull public android.app.appsearch.AppSearchSchema.Builder addProperty(@NonNull android.app.appsearch.AppSearchSchema.PropertyConfig);
68    method @NonNull public android.app.appsearch.AppSearchSchema build();
69  }
70
71  public static final class AppSearchSchema.BytesPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
72  }
73
74  public static final class AppSearchSchema.BytesPropertyConfig.Builder {
75    ctor public AppSearchSchema.BytesPropertyConfig.Builder(@NonNull String);
76    method @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig build();
77    method @NonNull public android.app.appsearch.AppSearchSchema.BytesPropertyConfig.Builder setCardinality(int);
78  }
79
80  public static final class AppSearchSchema.DocumentPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
81    method @NonNull public String getSchemaType();
82    method public boolean shouldIndexNestedProperties();
83  }
84
85  public static final class AppSearchSchema.DocumentPropertyConfig.Builder {
86    ctor public AppSearchSchema.DocumentPropertyConfig.Builder(@NonNull String, @NonNull String);
87    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig build();
88    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setCardinality(int);
89    method @NonNull public android.app.appsearch.AppSearchSchema.DocumentPropertyConfig.Builder setShouldIndexNestedProperties(boolean);
90  }
91
92  public static final class AppSearchSchema.DoublePropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
93  }
94
95  public static final class AppSearchSchema.DoublePropertyConfig.Builder {
96    ctor public AppSearchSchema.DoublePropertyConfig.Builder(@NonNull String);
97    method @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig build();
98    method @NonNull public android.app.appsearch.AppSearchSchema.DoublePropertyConfig.Builder setCardinality(int);
99  }
100
101  public static final class AppSearchSchema.LongPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
102  }
103
104  public static final class AppSearchSchema.LongPropertyConfig.Builder {
105    ctor public AppSearchSchema.LongPropertyConfig.Builder(@NonNull String);
106    method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig build();
107    method @NonNull public android.app.appsearch.AppSearchSchema.LongPropertyConfig.Builder setCardinality(int);
108  }
109
110  public abstract static class AppSearchSchema.PropertyConfig {
111    method public int getCardinality();
112    method @NonNull public String getName();
113    field public static final int CARDINALITY_OPTIONAL = 2; // 0x2
114    field public static final int CARDINALITY_REPEATED = 1; // 0x1
115    field public static final int CARDINALITY_REQUIRED = 3; // 0x3
116  }
117
118  public static final class AppSearchSchema.StringPropertyConfig extends android.app.appsearch.AppSearchSchema.PropertyConfig {
119    method public int getIndexingType();
120    method public int getTokenizerType();
121    field public static final int INDEXING_TYPE_EXACT_TERMS = 1; // 0x1
122    field public static final int INDEXING_TYPE_NONE = 0; // 0x0
123    field public static final int INDEXING_TYPE_PREFIXES = 2; // 0x2
124    field public static final int TOKENIZER_TYPE_NONE = 0; // 0x0
125    field public static final int TOKENIZER_TYPE_PLAIN = 1; // 0x1
126  }
127
128  public static final class AppSearchSchema.StringPropertyConfig.Builder {
129    ctor public AppSearchSchema.StringPropertyConfig.Builder(@NonNull String);
130    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig build();
131    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setCardinality(int);
132    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setIndexingType(int);
133    method @NonNull public android.app.appsearch.AppSearchSchema.StringPropertyConfig.Builder setTokenizerType(int);
134  }
135
136  public final class AppSearchSession implements java.io.Closeable {
137    method public void close();
138    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>);
139    method public void getNamespaces(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<java.util.Set<java.lang.String>>>);
140    method public void getSchema(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.GetSchemaResponse>>);
141    method public void getStorageInfo(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.app.appsearch.AppSearchResult<android.app.appsearch.StorageInfo>>);
142    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>);
143    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>);
144    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>>);
145    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>>);
146    method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
147    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>>);
148  }
149
150  public interface BatchResultCallback<KeyType, ValueType> {
151    method public void onResult(@NonNull android.app.appsearch.AppSearchBatchResult<KeyType,ValueType>);
152    method public default void onSystemError(@Nullable Throwable);
153  }
154
155  public class GenericDocument {
156    ctor protected GenericDocument(@NonNull android.app.appsearch.GenericDocument);
157    method public long getCreationTimestampMillis();
158    method @NonNull public String getId();
159    method public static int getMaxIndexedProperties();
160    method @NonNull public String getNamespace();
161    method @Nullable public Object getProperty(@NonNull String);
162    method public boolean getPropertyBoolean(@NonNull String);
163    method @Nullable public boolean[] getPropertyBooleanArray(@NonNull String);
164    method @Nullable public byte[] getPropertyBytes(@NonNull String);
165    method @Nullable public byte[][] getPropertyBytesArray(@NonNull String);
166    method @Nullable public android.app.appsearch.GenericDocument getPropertyDocument(@NonNull String);
167    method @Nullable public android.app.appsearch.GenericDocument[] getPropertyDocumentArray(@NonNull String);
168    method public double getPropertyDouble(@NonNull String);
169    method @Nullable public double[] getPropertyDoubleArray(@NonNull String);
170    method public long getPropertyLong(@NonNull String);
171    method @Nullable public long[] getPropertyLongArray(@NonNull String);
172    method @NonNull public java.util.Set<java.lang.String> getPropertyNames();
173    method @Nullable public String getPropertyString(@NonNull String);
174    method @Nullable public String[] getPropertyStringArray(@NonNull String);
175    method @NonNull public String getSchemaType();
176    method public int getScore();
177    method public long getTtlMillis();
178  }
179
180  public static class GenericDocument.Builder<BuilderType extends android.app.appsearch.GenericDocument.Builder> {
181    ctor public GenericDocument.Builder(@NonNull String, @NonNull String, @NonNull String);
182    method @NonNull public android.app.appsearch.GenericDocument build();
183    method @NonNull public BuilderType setCreationTimestampMillis(long);
184    method @NonNull public BuilderType setPropertyBoolean(@NonNull String, @NonNull boolean...);
185    method @NonNull public BuilderType setPropertyBytes(@NonNull String, @NonNull byte[]...);
186    method @NonNull public BuilderType setPropertyDocument(@NonNull String, @NonNull android.app.appsearch.GenericDocument...);
187    method @NonNull public BuilderType setPropertyDouble(@NonNull String, @NonNull double...);
188    method @NonNull public BuilderType setPropertyLong(@NonNull String, @NonNull long...);
189    method @NonNull public BuilderType setPropertyString(@NonNull String, @NonNull java.lang.String...);
190    method @NonNull public BuilderType setScore(@IntRange(from=0, to=java.lang.Integer.MAX_VALUE) int);
191    method @NonNull public BuilderType setTtlMillis(long);
192  }
193
194  public final class GetByDocumentIdRequest {
195    method @NonNull public java.util.Set<java.lang.String> getIds();
196    method @NonNull public String getNamespace();
197    method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getProjections();
198    field public static final String PROJECTION_SCHEMA_TYPE_WILDCARD = "*";
199  }
200
201  public static final class GetByDocumentIdRequest.Builder {
202    ctor public GetByDocumentIdRequest.Builder(@NonNull String);
203    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addIds(@NonNull java.lang.String...);
204    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addIds(@NonNull java.util.Collection<java.lang.String>);
205    method @NonNull public android.app.appsearch.GetByDocumentIdRequest.Builder addProjection(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
206    method @NonNull public android.app.appsearch.GetByDocumentIdRequest build();
207  }
208
209  public final class GetSchemaResponse {
210    method @NonNull public java.util.Set<android.app.appsearch.AppSearchSchema> getSchemas();
211    method @IntRange(from=0) public int getVersion();
212  }
213
214  public static final class GetSchemaResponse.Builder {
215    ctor public GetSchemaResponse.Builder();
216    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder addSchema(@NonNull android.app.appsearch.AppSearchSchema);
217    method @NonNull public android.app.appsearch.GetSchemaResponse build();
218    method @NonNull public android.app.appsearch.GetSchemaResponse.Builder setVersion(@IntRange(from=0) int);
219  }
220
221  public class GlobalSearchSession implements java.io.Closeable {
222    method public void close();
223    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>>);
224    method @NonNull public android.app.appsearch.SearchResults search(@NonNull String, @NonNull android.app.appsearch.SearchSpec);
225  }
226
227  public abstract class Migrator {
228    ctor public Migrator();
229    method @NonNull @WorkerThread public abstract android.app.appsearch.GenericDocument onDowngrade(int, int, @NonNull android.app.appsearch.GenericDocument);
230    method @NonNull @WorkerThread public abstract android.app.appsearch.GenericDocument onUpgrade(int, int, @NonNull android.app.appsearch.GenericDocument);
231    method public abstract boolean shouldMigrate(int, int);
232  }
233
234  public class PackageIdentifier {
235    ctor public PackageIdentifier(@NonNull String, @NonNull byte[]);
236    method @NonNull public String getPackageName();
237    method @NonNull public byte[] getSha256Certificate();
238  }
239
240  public final class PutDocumentsRequest {
241    method @NonNull public java.util.List<android.app.appsearch.GenericDocument> getGenericDocuments();
242  }
243
244  public static final class PutDocumentsRequest.Builder {
245    ctor public PutDocumentsRequest.Builder();
246    method @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addGenericDocuments(@NonNull android.app.appsearch.GenericDocument...);
247    method @NonNull public android.app.appsearch.PutDocumentsRequest.Builder addGenericDocuments(@NonNull java.util.Collection<? extends android.app.appsearch.GenericDocument>);
248    method @NonNull public android.app.appsearch.PutDocumentsRequest build();
249  }
250
251  public final class RemoveByDocumentIdRequest {
252    method @NonNull public java.util.Set<java.lang.String> getIds();
253    method @NonNull public String getNamespace();
254  }
255
256  public static final class RemoveByDocumentIdRequest.Builder {
257    ctor public RemoveByDocumentIdRequest.Builder(@NonNull String);
258    method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest.Builder addIds(@NonNull java.lang.String...);
259    method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest.Builder addIds(@NonNull java.util.Collection<java.lang.String>);
260    method @NonNull public android.app.appsearch.RemoveByDocumentIdRequest build();
261  }
262
263  public final class ReportSystemUsageRequest {
264    method @NonNull public String getDatabaseName();
265    method @NonNull public String getDocumentId();
266    method @NonNull public String getNamespace();
267    method @NonNull public String getPackageName();
268    method public long getUsageTimestampMillis();
269  }
270
271  public static final class ReportSystemUsageRequest.Builder {
272    ctor public ReportSystemUsageRequest.Builder(@NonNull String, @NonNull String, @NonNull String, @NonNull String);
273    method @NonNull public android.app.appsearch.ReportSystemUsageRequest build();
274    method @NonNull public android.app.appsearch.ReportSystemUsageRequest.Builder setUsageTimestampMillis(long);
275  }
276
277  public final class ReportUsageRequest {
278    method @NonNull public String getDocumentId();
279    method @NonNull public String getNamespace();
280    method public long getUsageTimestampMillis();
281  }
282
283  public static final class ReportUsageRequest.Builder {
284    ctor public ReportUsageRequest.Builder(@NonNull String, @NonNull String);
285    method @NonNull public android.app.appsearch.ReportUsageRequest build();
286    method @NonNull public android.app.appsearch.ReportUsageRequest.Builder setUsageTimestampMillis(long);
287  }
288
289  public final class SearchResult {
290    method @NonNull public String getDatabaseName();
291    method @NonNull public android.app.appsearch.GenericDocument getGenericDocument();
292    method @NonNull public java.util.List<android.app.appsearch.SearchResult.MatchInfo> getMatchInfos();
293    method @NonNull public String getPackageName();
294    method public double getRankingSignal();
295  }
296
297  public static final class SearchResult.Builder {
298    ctor public SearchResult.Builder(@NonNull String, @NonNull String);
299    method @NonNull public android.app.appsearch.SearchResult.Builder addMatchInfo(@NonNull android.app.appsearch.SearchResult.MatchInfo);
300    method @NonNull public android.app.appsearch.SearchResult build();
301    method @NonNull public android.app.appsearch.SearchResult.Builder setGenericDocument(@NonNull android.app.appsearch.GenericDocument);
302    method @NonNull public android.app.appsearch.SearchResult.Builder setRankingSignal(double);
303  }
304
305  public static final class SearchResult.MatchInfo {
306    method @NonNull public CharSequence getExactMatch();
307    method @NonNull public android.app.appsearch.SearchResult.MatchRange getExactMatchRange();
308    method @NonNull public String getFullText();
309    method @NonNull public String getPropertyPath();
310    method @NonNull public CharSequence getSnippet();
311    method @NonNull public android.app.appsearch.SearchResult.MatchRange getSnippetRange();
312  }
313
314  public static final class SearchResult.MatchInfo.Builder {
315    ctor public SearchResult.MatchInfo.Builder(@NonNull String);
316    method @NonNull public android.app.appsearch.SearchResult.MatchInfo build();
317    method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setExactMatchRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
318    method @NonNull public android.app.appsearch.SearchResult.MatchInfo.Builder setSnippetRange(@NonNull android.app.appsearch.SearchResult.MatchRange);
319  }
320
321  public static final class SearchResult.MatchRange {
322    ctor public SearchResult.MatchRange(int, int);
323    method public int getEnd();
324    method public int getStart();
325  }
326
327  public class SearchResults implements java.io.Closeable {
328    method public void close();
329    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>>>);
330  }
331
332  public final class SearchSpec {
333    method @NonNull public java.util.List<java.lang.String> getFilterNamespaces();
334    method @NonNull public java.util.List<java.lang.String> getFilterPackageNames();
335    method @NonNull public java.util.List<java.lang.String> getFilterSchemas();
336    method public int getMaxSnippetSize();
337    method public int getOrder();
338    method @NonNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getProjections();
339    method public int getRankingStrategy();
340    method public int getResultCountPerPage();
341    method public int getResultGroupingLimit();
342    method public int getResultGroupingTypeFlags();
343    method public int getSnippetCount();
344    method public int getSnippetCountPerProperty();
345    method public int getTermMatch();
346    field public static final int GROUPING_TYPE_PER_NAMESPACE = 2; // 0x2
347    field public static final int GROUPING_TYPE_PER_PACKAGE = 1; // 0x1
348    field public static final int ORDER_ASCENDING = 1; // 0x1
349    field public static final int ORDER_DESCENDING = 0; // 0x0
350    field public static final String PROJECTION_SCHEMA_TYPE_WILDCARD = "*";
351    field public static final int RANKING_STRATEGY_CREATION_TIMESTAMP = 2; // 0x2
352    field public static final int RANKING_STRATEGY_DOCUMENT_SCORE = 1; // 0x1
353    field public static final int RANKING_STRATEGY_NONE = 0; // 0x0
354    field public static final int RANKING_STRATEGY_RELEVANCE_SCORE = 3; // 0x3
355    field public static final int RANKING_STRATEGY_SYSTEM_USAGE_COUNT = 6; // 0x6
356    field public static final int RANKING_STRATEGY_SYSTEM_USAGE_LAST_USED_TIMESTAMP = 7; // 0x7
357    field public static final int RANKING_STRATEGY_USAGE_COUNT = 4; // 0x4
358    field public static final int RANKING_STRATEGY_USAGE_LAST_USED_TIMESTAMP = 5; // 0x5
359    field public static final int TERM_MATCH_EXACT_ONLY = 1; // 0x1
360    field public static final int TERM_MATCH_PREFIX = 2; // 0x2
361  }
362
363  public static final class SearchSpec.Builder {
364    ctor public SearchSpec.Builder();
365    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterNamespaces(@NonNull java.lang.String...);
366    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterNamespaces(@NonNull java.util.Collection<java.lang.String>);
367    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPackageNames(@NonNull java.lang.String...);
368    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterPackageNames(@NonNull java.util.Collection<java.lang.String>);
369    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterSchemas(@NonNull java.lang.String...);
370    method @NonNull public android.app.appsearch.SearchSpec.Builder addFilterSchemas(@NonNull java.util.Collection<java.lang.String>);
371    method @NonNull public android.app.appsearch.SearchSpec.Builder addProjection(@NonNull String, @NonNull java.util.Collection<java.lang.String>);
372    method @NonNull public android.app.appsearch.SearchSpec build();
373    method @NonNull public android.app.appsearch.SearchSpec.Builder setMaxSnippetSize(@IntRange(from=0, to=0x2710) int);
374    method @NonNull public android.app.appsearch.SearchSpec.Builder setOrder(int);
375    method @NonNull public android.app.appsearch.SearchSpec.Builder setRankingStrategy(int);
376    method @NonNull public android.app.appsearch.SearchSpec.Builder setResultCountPerPage(@IntRange(from=0, to=0x2710) int);
377    method @NonNull public android.app.appsearch.SearchSpec.Builder setResultGrouping(int, int);
378    method @NonNull public android.app.appsearch.SearchSpec.Builder setSnippetCount(@IntRange(from=0, to=0x2710) int);
379    method @NonNull public android.app.appsearch.SearchSpec.Builder setSnippetCountPerProperty(@IntRange(from=0, to=0x2710) int);
380    method @NonNull public android.app.appsearch.SearchSpec.Builder setTermMatch(int);
381  }
382
383  public final class SetSchemaRequest {
384    method @NonNull public java.util.Map<java.lang.String,android.app.appsearch.Migrator> getMigrators();
385    method @NonNull public java.util.Set<android.app.appsearch.AppSearchSchema> getSchemas();
386    method @NonNull public java.util.Set<java.lang.String> getSchemasNotDisplayedBySystem();
387    method @NonNull public java.util.Map<java.lang.String,java.util.Set<android.app.appsearch.PackageIdentifier>> getSchemasVisibleToPackages();
388    method @IntRange(from=1) public int getVersion();
389    method public boolean isForceOverride();
390  }
391
392  public static final class SetSchemaRequest.Builder {
393    ctor public SetSchemaRequest.Builder();
394    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemas(@NonNull android.app.appsearch.AppSearchSchema...);
395    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder addSchemas(@NonNull java.util.Collection<android.app.appsearch.AppSearchSchema>);
396    method @NonNull public android.app.appsearch.SetSchemaRequest build();
397    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setForceOverride(boolean);
398    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setMigrator(@NonNull String, @NonNull android.app.appsearch.Migrator);
399    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setMigrators(@NonNull java.util.Map<java.lang.String,android.app.appsearch.Migrator>);
400    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setSchemaTypeDisplayedBySystem(@NonNull String, boolean);
401    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setSchemaTypeVisibilityForPackage(@NonNull String, boolean, @NonNull android.app.appsearch.PackageIdentifier);
402    method @NonNull public android.app.appsearch.SetSchemaRequest.Builder setVersion(@IntRange(from=1) int);
403  }
404
405  public class SetSchemaResponse {
406    method @NonNull public java.util.Set<java.lang.String> getDeletedTypes();
407    method @NonNull public java.util.Set<java.lang.String> getIncompatibleTypes();
408    method @NonNull public java.util.Set<java.lang.String> getMigratedTypes();
409    method @NonNull public java.util.List<android.app.appsearch.SetSchemaResponse.MigrationFailure> getMigrationFailures();
410  }
411
412  public static final class SetSchemaResponse.Builder {
413    ctor public SetSchemaResponse.Builder();
414    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addDeletedType(@NonNull String);
415    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addDeletedTypes(@NonNull java.util.Collection<java.lang.String>);
416    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addIncompatibleType(@NonNull String);
417    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addIncompatibleTypes(@NonNull java.util.Collection<java.lang.String>);
418    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigratedType(@NonNull String);
419    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigratedTypes(@NonNull java.util.Collection<java.lang.String>);
420    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigrationFailure(@NonNull android.app.appsearch.SetSchemaResponse.MigrationFailure);
421    method @NonNull public android.app.appsearch.SetSchemaResponse.Builder addMigrationFailures(@NonNull java.util.Collection<android.app.appsearch.SetSchemaResponse.MigrationFailure>);
422    method @NonNull public android.app.appsearch.SetSchemaResponse build();
423  }
424
425  public static class SetSchemaResponse.MigrationFailure {
426    ctor public SetSchemaResponse.MigrationFailure(@NonNull String, @NonNull String, @NonNull String, @NonNull android.app.appsearch.AppSearchResult<?>);
427    method @NonNull public android.app.appsearch.AppSearchResult<java.lang.Void> getAppSearchResult();
428    method @NonNull public String getDocumentId();
429    method @NonNull public String getNamespace();
430    method @NonNull public String getSchemaType();
431  }
432
433  public class StorageInfo {
434    method public int getAliveDocumentsCount();
435    method public int getAliveNamespacesCount();
436    method public long getSizeBytes();
437  }
438
439  public static final class StorageInfo.Builder {
440    ctor public StorageInfo.Builder();
441    method @NonNull public android.app.appsearch.StorageInfo build();
442    method @NonNull public android.app.appsearch.StorageInfo.Builder setAliveDocumentsCount(int);
443    method @NonNull public android.app.appsearch.StorageInfo.Builder setAliveNamespacesCount(int);
444    method @NonNull public android.app.appsearch.StorageInfo.Builder setSizeBytes(long);
445  }
446
447}
448
449package android.app.appsearch.exceptions {
450
451  public class AppSearchException extends java.lang.Exception {
452    ctor public AppSearchException(int);
453    ctor public AppSearchException(int, @Nullable String);
454    ctor public AppSearchException(int, @Nullable String, @Nullable Throwable);
455    method public int getResultCode();
456    method @NonNull public <T> android.app.appsearch.AppSearchResult<T> toAppSearchResult();
457  }
458
459}
460
461