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 class NavDestination {
43    ctor public NavDestination(androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>);
44    ctor public NavDestination(String);
45    method public final void addArgument(String, androidx.navigation.NavArgument);
46    method public final void addDeepLink(String);
47    method public final androidx.navigation.NavAction? getAction(@IdRes int);
48    method public final java.util.Map<java.lang.String!,androidx.navigation.NavArgument!> getArguments();
49    method @IdRes public final int getId();
50    method public final CharSequence? getLabel();
51    method public final String getNavigatorName();
52    method public final androidx.navigation.NavGraph? getParent();
53    method public boolean hasDeepLink(android.net.Uri);
54    method @CallSuper public void onInflate(android.content.Context, android.util.AttributeSet);
55    method protected static <C> Class<? extends C> parseClassFromName(android.content.Context, String, Class<? extends C>);
56    method public final void putAction(@IdRes int, androidx.navigation.NavAction);
57    method public final void putAction(@IdRes int, @IdRes int);
58    method public final void removeAction(@IdRes int);
59    method public final void removeArgument(String);
60    method public final void setId(@IdRes int);
61    method public final void setLabel(CharSequence?);
62  }
63
64  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface NavDestination.ClassType {
65    method public abstract Class<?> value();
66  }
67
68  public interface NavDirections {
69    method @IdRes public int getActionId();
70    method public android.os.Bundle getArguments();
71  }
72
73  public class NavGraph extends androidx.navigation.NavDestination implements java.lang.Iterable<androidx.navigation.NavDestination> {
74    ctor public NavGraph(androidx.navigation.Navigator<? extends androidx.navigation.NavGraph>);
75    method public final void addAll(androidx.navigation.NavGraph);
76    method public final void addDestination(androidx.navigation.NavDestination);
77    method public final void addDestinations(androidx.navigation.NavDestination!...);
78    method public final void addDestinations(java.util.Collection<androidx.navigation.NavDestination!>);
79    method public final void clear();
80    method public final androidx.navigation.NavDestination? findNode(@IdRes int);
81    method @IdRes public final int getStartDestination();
82    method public final java.util.Iterator<androidx.navigation.NavDestination!> iterator();
83    method public final void remove(androidx.navigation.NavDestination);
84    method public final void setStartDestination(@IdRes int);
85  }
86
87  @androidx.navigation.Navigator.Name("navigation") public class NavGraphNavigator extends androidx.navigation.Navigator<androidx.navigation.NavGraph> {
88    ctor public NavGraphNavigator(androidx.navigation.NavigatorProvider);
89    method public androidx.navigation.NavGraph createDestination();
90    method public androidx.navigation.NavDestination? navigate(androidx.navigation.NavGraph, android.os.Bundle?, androidx.navigation.NavOptions?, androidx.navigation.Navigator.Extras?);
91    method public boolean popBackStack();
92  }
93
94  public final class NavOptions {
95    method @AnimRes @AnimatorRes public int getEnterAnim();
96    method @AnimRes @AnimatorRes public int getExitAnim();
97    method @AnimRes @AnimatorRes public int getPopEnterAnim();
98    method @AnimRes @AnimatorRes public int getPopExitAnim();
99    method @IdRes public int getPopUpTo();
100    method public boolean isPopUpToInclusive();
101    method public boolean shouldLaunchSingleTop();
102  }
103
104  public static final class NavOptions.Builder {
105    ctor public NavOptions.Builder();
106    method public androidx.navigation.NavOptions build();
107    method public androidx.navigation.NavOptions.Builder setEnterAnim(@AnimRes @AnimatorRes int);
108    method public androidx.navigation.NavOptions.Builder setExitAnim(@AnimRes @AnimatorRes int);
109    method public androidx.navigation.NavOptions.Builder setLaunchSingleTop(boolean);
110    method public androidx.navigation.NavOptions.Builder setPopEnterAnim(@AnimRes @AnimatorRes int);
111    method public androidx.navigation.NavOptions.Builder setPopExitAnim(@AnimRes @AnimatorRes int);
112    method public androidx.navigation.NavOptions.Builder setPopUpTo(@IdRes int, boolean);
113  }
114
115  public abstract class NavType<T> {
116    method public static androidx.navigation.NavType<?> fromArgType(String?, String?);
117    method public abstract T? get(android.os.Bundle, String);
118    method public abstract String getName();
119    method public boolean isNullableAllowed();
120    method public abstract T parseValue(String);
121    method public abstract void put(android.os.Bundle, String, T?);
122    field public static final androidx.navigation.NavType<boolean[]!> BoolArrayType;
123    field public static final androidx.navigation.NavType<java.lang.Boolean!> BoolType;
124    field public static final androidx.navigation.NavType<float[]!> FloatArrayType;
125    field public static final androidx.navigation.NavType<java.lang.Float!> FloatType;
126    field public static final androidx.navigation.NavType<int[]!> IntArrayType;
127    field public static final androidx.navigation.NavType<java.lang.Integer!> IntType;
128    field public static final androidx.navigation.NavType<long[]!> LongArrayType;
129    field public static final androidx.navigation.NavType<java.lang.Long!> LongType;
130    field public static final androidx.navigation.NavType<java.lang.Integer!> ReferenceType;
131    field public static final androidx.navigation.NavType<java.lang.String![]!> StringArrayType;
132    field public static final androidx.navigation.NavType<java.lang.String!> StringType;
133  }
134
135  public static final class NavType.EnumType<D extends java.lang.Enum> extends androidx.navigation.NavType.SerializableType<D> {
136    ctor public NavType.EnumType(Class<D!>);
137  }
138
139  public static final class NavType.ParcelableArrayType<D extends android.os.Parcelable> extends androidx.navigation.NavType<D[]> {
140    ctor public NavType.ParcelableArrayType(Class<D!>);
141    method public D![]? get(android.os.Bundle, String);
142    method public String getName();
143    method public D![] parseValue(String);
144    method public void put(android.os.Bundle, String, D![]?);
145  }
146
147  public static final class NavType.ParcelableType<D> extends androidx.navigation.NavType<D> {
148    ctor public NavType.ParcelableType(Class<D!>);
149    method public D? get(android.os.Bundle, String);
150    method public String getName();
151    method public D parseValue(String);
152    method public void put(android.os.Bundle, String, D?);
153  }
154
155  public static final class NavType.SerializableArrayType<D extends java.io.Serializable> extends androidx.navigation.NavType<D[]> {
156    ctor public NavType.SerializableArrayType(Class<D!>);
157    method public D![]? get(android.os.Bundle, String);
158    method public String getName();
159    method public D![] parseValue(String);
160    method public void put(android.os.Bundle, String, D![]?);
161  }
162
163  public static class NavType.SerializableType<D extends java.io.Serializable> extends androidx.navigation.NavType<D> {
164    ctor public NavType.SerializableType(Class<D!>);
165    method public D? get(android.os.Bundle, String);
166    method public String getName();
167    method public D parseValue(String);
168    method public void put(android.os.Bundle, String, D?);
169  }
170
171  public abstract class Navigator<D extends androidx.navigation.NavDestination> {
172    ctor public Navigator();
173    method public abstract D createDestination();
174    method public abstract androidx.navigation.NavDestination? navigate(D, android.os.Bundle?, androidx.navigation.NavOptions?, androidx.navigation.Navigator.Extras?);
175    method public void onRestoreState(android.os.Bundle);
176    method public android.os.Bundle? onSaveState();
177    method public abstract boolean popBackStack();
178  }
179
180  public static interface Navigator.Extras {
181  }
182
183  @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME) @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE}) public static @interface Navigator.Name {
184    method public abstract String value();
185  }
186
187  public class NavigatorProvider {
188    ctor public NavigatorProvider();
189    method public final androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>? addNavigator(androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>);
190    method @CallSuper public androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>? addNavigator(String, androidx.navigation.Navigator<? extends androidx.navigation.NavDestination>);
191    method public final <T extends androidx.navigation.Navigator<?>> T getNavigator(Class<T!>);
192    method @CallSuper public <T extends androidx.navigation.Navigator<?>> T getNavigator(String);
193  }
194
195}
196
197