1// Signature format: 4.0
2package androidx.navigation {
3
4  public final class ActionOnlyNavDirections implements androidx.navigation.NavDirections {
5    ctor public ActionOnlyNavDirections(int);
6    method public int getActionId();
7    method public android.os.Bundle getArguments();
8  }
9
10  public interface FloatingWindow {
11  }
12
13  public final class NavAction {
14    ctor public NavAction(@IdRes int);
15    ctor public NavAction(@IdRes int, androidx.navigation.NavOptions?);
16    ctor public NavAction(@IdRes int, androidx.navigation.NavOptions?, android.os.Bundle?);
17    method public android.os.Bundle? getDefaultArguments();
18    method public int getDestinationId();
19    method public androidx.navigation.NavOptions? getNavOptions();
20    method public void setDefaultArguments(android.os.Bundle?);
21    method public void setNavOptions(androidx.navigation.NavOptions?);
22  }
23
24  public interface NavArgs {
25  }
26
27  public final class NavArgument {
28    method public Object? getDefaultValue();
29    method public androidx.navigation.NavType<?> getType();
30    method public boolean isDefaultValuePresent();
31    method public boolean isNullable();
32  }
33
34  public static final class NavArgument.Builder {
35    ctor public NavArgument.Builder();
36    method public androidx.navigation.NavArgument build();
37    method public androidx.navigation.NavArgument.Builder setDefaultValue(Object?);
38    method public androidx.navigation.NavArgument.Builder setIsNullable(boolean);
39    method public androidx.navigation.NavArgument.Builder setType(androidx.navigation.NavType<?>);
40  }
41
42  public final class NavDeepLink {
43    method public String? getAction();
44    method public String? getMimeType();
45    method public String? getUriPattern();
46  }
47
48  public static final class NavDeepLink.Builder {
49    method public androidx.navigation.NavDeepLink build();
50    method public static androidx.navigation.NavDeepLink.Builder fromAction(String);
51    method public static androidx.navigation.NavDeepLink.Builder fromMimeType(String);
52    method public static androidx.navigation.NavDeepLink.Builder fromUriPattern(String);
53    method public androidx.navigation.NavDeepLink.Builder setAction(String);
54    method public androidx.navigation.NavDeepLink.Builder setMimeType(String);
55    method public androidx.navigation.NavDeepLink.Builder setUriPattern(String);
56  }
57
58  public class NavDeepLinkRequest {
59    method public String? getAction();
60    method public String? getMimeType();
61    method public android.net.Uri? getUri();
62  }
63
64  public static final class NavDeepLinkRequest.Builder {
65    method public androidx.navigation.NavDeepLinkRequest build();
66    method public static androidx.navigation.NavDeepLinkRequest.Builder fromAction(String);
67    method public static androidx.navigation.NavDeepLinkRequest.Builder fromMimeType(String);
68    method public static androidx.navigation.NavDeepLinkRequest.Builder fromUri(android.net.Uri);
69    method public androidx.navigation.NavDeepLinkRequest.Builder setAction(String);
70    method public androidx.navigation.NavDeepLinkRequest.Builder setMimeType(String);
71    method public androidx.navigation.NavDeepLinkRequest.Builder setUri(android.net.Uri);
72  }
73
74  public class NavDestination {
75    ctor public NavDestination(androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>);
76    ctor public NavDestination(String);
77    method public final void addArgument(String, androidx.navigation.NavArgument);
78    method public final void addDeepLink(androidx.navigation.NavDeepLink);
79    method public final void addDeepLink(String);
80    method public final androidx.navigation.NavAction? getAction(@IdRes int);
81    method public final java.util.Map<java.lang.String!,androidx.navigation.NavArgument!> getArguments();
82    method @IdRes public final int getId();
83    method public final CharSequence? getLabel();
84    method public final String getNavigatorName();
85    method public final androidx.navigation.NavGraph? getParent();
86    method public boolean hasDeepLink(android.net.Uri);
87    method public boolean hasDeepLink(androidx.navigation.NavDeepLinkRequest);
88    method @CallSuper public void onInflate(android.content.Context, android.util.AttributeSet);
89    method protected static <C> Class<? extends C> parseClassFromName(android.content.Context, String, Class<? extends C>);
90    method public final void putAction(@IdRes int, androidx.navigation.NavAction);
91    method public final void putAction(@IdRes int, @IdRes int);
92    method public final void removeAction(@IdRes int);
93    method public final void removeArgument(String);
94    method public final void setId(@IdRes int);
95    method public final void setLabel(CharSequence?);
96  }
97
98  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface NavDestination.ClassType {
99    method public abstract Class<?> value();
100  }
101
102  public interface NavDirections {
103    method @IdRes public int getActionId();
104    method public android.os.Bundle getArguments();
105  }
106
107  public class NavGraph extends androidx.navigation.NavDestination implements java.lang.Iterable<androidx.navigation.NavDestination> {
108    ctor public NavGraph(androidx.navigation.Navigator<? extends androidx.navigation.NavGraph>);
109    method public final void addAll(androidx.navigation.NavGraph);
110    method public final void addDestination(androidx.navigation.NavDestination);
111    method public final void addDestinations(androidx.navigation.NavDestination!...);
112    method public final void addDestinations(java.util.Collection<androidx.navigation.NavDestination!>);
113    method public final void clear();
114    method public final androidx.navigation.NavDestination? findNode(@IdRes int);
115    method @IdRes public final int getStartDestination();
116    method public final java.util.Iterator<androidx.navigation.NavDestination!> iterator();
117    method public final void remove(androidx.navigation.NavDestination);
118    method public final void setStartDestination(@IdRes int);
119  }
120
121  @androidx.navigation.Navigator.Name("navigation") public class NavGraphNavigator extends androidx.navigation.Navigator<androidx.navigation.NavGraph> {
122    ctor public NavGraphNavigator(androidx.navigation.NavigatorProvider);
123    method public androidx.navigation.NavGraph createDestination();
124    method public androidx.navigation.NavDestination? navigate(androidx.navigation.NavGraph, android.os.Bundle?, androidx.navigation.NavOptions?, androidx.navigation.Navigator.Extras?);
125    method public boolean popBackStack();
126  }
127
128  public final class NavOptions {
129    method @AnimRes @AnimatorRes public int getEnterAnim();
130    method @AnimRes @AnimatorRes public int getExitAnim();
131    method @AnimRes @AnimatorRes public int getPopEnterAnim();
132    method @AnimRes @AnimatorRes public int getPopExitAnim();
133    method @IdRes public int getPopUpTo();
134    method public boolean isPopUpToInclusive();
135    method public boolean shouldLaunchSingleTop();
136  }
137
138  public static final class NavOptions.Builder {
139    ctor public NavOptions.Builder();
140    method public androidx.navigation.NavOptions build();
141    method public androidx.navigation.NavOptions.Builder setEnterAnim(@AnimRes @AnimatorRes int);
142    method public androidx.navigation.NavOptions.Builder setExitAnim(@AnimRes @AnimatorRes int);
143    method public androidx.navigation.NavOptions.Builder setLaunchSingleTop(boolean);
144    method public androidx.navigation.NavOptions.Builder setPopEnterAnim(@AnimRes @AnimatorRes int);
145    method public androidx.navigation.NavOptions.Builder setPopExitAnim(@AnimRes @AnimatorRes int);
146    method public androidx.navigation.NavOptions.Builder setPopUpTo(@IdRes int, boolean);
147  }
148
149  public abstract class NavType<T> {
150    method public static androidx.navigation.NavType<?> fromArgType(String?, String?);
151    method public abstract T? get(android.os.Bundle, String);
152    method public abstract String getName();
153    method public boolean isNullableAllowed();
154    method public abstract T parseValue(String);
155    method public abstract void put(android.os.Bundle, String, T?);
156    field public static final androidx.navigation.NavType<boolean[]!> BoolArrayType;
157    field public static final androidx.navigation.NavType<java.lang.Boolean!> BoolType;
158    field public static final androidx.navigation.NavType<float[]!> FloatArrayType;
159    field public static final androidx.navigation.NavType<java.lang.Float!> FloatType;
160    field public static final androidx.navigation.NavType<int[]!> IntArrayType;
161    field public static final androidx.navigation.NavType<java.lang.Integer!> IntType;
162    field public static final androidx.navigation.NavType<long[]!> LongArrayType;
163    field public static final androidx.navigation.NavType<java.lang.Long!> LongType;
164    field public static final androidx.navigation.NavType<java.lang.Integer!> ReferenceType;
165    field public static final androidx.navigation.NavType<java.lang.String![]!> StringArrayType;
166    field public static final androidx.navigation.NavType<java.lang.String!> StringType;
167  }
168
169  public static final class NavType.EnumType<D extends java.lang.Enum> extends androidx.navigation.NavType.SerializableType<D> {
170    ctor public NavType.EnumType(Class<D!>);
171  }
172
173  public static final class NavType.ParcelableArrayType<D extends android.os.Parcelable> extends androidx.navigation.NavType<D[]> {
174    ctor public NavType.ParcelableArrayType(Class<D!>);
175    method public D![]? get(android.os.Bundle, String);
176    method public String getName();
177    method public D![] parseValue(String);
178    method public void put(android.os.Bundle, String, D![]?);
179  }
180
181  public static final class NavType.ParcelableType<D> extends androidx.navigation.NavType<D> {
182    ctor public NavType.ParcelableType(Class<D!>);
183    method public D? get(android.os.Bundle, String);
184    method public String getName();
185    method public D parseValue(String);
186    method public void put(android.os.Bundle, String, D?);
187  }
188
189  public static final class NavType.SerializableArrayType<D extends java.io.Serializable> extends androidx.navigation.NavType<D[]> {
190    ctor public NavType.SerializableArrayType(Class<D!>);
191    method public D![]? get(android.os.Bundle, String);
192    method public String getName();
193    method public D![] parseValue(String);
194    method public void put(android.os.Bundle, String, D![]?);
195  }
196
197  public static class NavType.SerializableType<D extends java.io.Serializable> extends androidx.navigation.NavType<D> {
198    ctor public NavType.SerializableType(Class<D!>);
199    method public D? get(android.os.Bundle, String);
200    method public String getName();
201    method public D parseValue(String);
202    method public void put(android.os.Bundle, String, D?);
203  }
204
205  public abstract class Navigator<D extends androidx.navigation.NavDestination> {
206    ctor public Navigator();
207    method public abstract D createDestination();
208    method public abstract androidx.navigation.NavDestination? navigate(D, android.os.Bundle?, androidx.navigation.NavOptions?, androidx.navigation.Navigator.Extras?);
209    method public void onRestoreState(android.os.Bundle);
210    method public android.os.Bundle? onSaveState();
211    method public abstract boolean popBackStack();
212  }
213
214  public static interface Navigator.Extras {
215  }
216
217  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface Navigator.Name {
218    method public abstract String value();
219  }
220
221  public class NavigatorProvider {
222    ctor public NavigatorProvider();
223    method public final androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>? addNavigator(androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>);
224    method @CallSuper public androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>? addNavigator(String, androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>);
225    method public final <T extends androidx.navigation.Navigator<?>> T getNavigator(Class<T!>);
226    method @CallSuper public <T extends androidx.navigation.Navigator<?>> T getNavigator(String);
227  }
228
229}
230
231