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