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