// Signature format: 4.0
package androidx.paging {

  public final class CachedPagingDataKt {
    method @CheckResult public static <T> kotlinx.coroutines.flow.Flow<androidx.paging.PagingData<T>> cachedIn(kotlinx.coroutines.flow.Flow<androidx.paging.PagingData<T>>, kotlinx.coroutines.CoroutineScope scope);
  }

  public final class CancelableChannelFlowKt {
  }

  public final class CombinedLoadStates {
    ctor public CombinedLoadStates(androidx.paging.LoadState refresh, androidx.paging.LoadState prepend, androidx.paging.LoadState append, androidx.paging.LoadStates source, optional androidx.paging.LoadStates? mediator);
    method public androidx.paging.LoadState getAppend();
    method public androidx.paging.LoadStates? getMediator();
    method public androidx.paging.LoadState getPrepend();
    method public androidx.paging.LoadState getRefresh();
    method public androidx.paging.LoadStates getSource();
    property public final androidx.paging.LoadState append;
    property public final androidx.paging.LoadStates? mediator;
    property public final androidx.paging.LoadState prepend;
    property public final androidx.paging.LoadState refresh;
    property public final androidx.paging.LoadStates source;
  }

  public abstract class DataSource<Key, Value> {
    method @AnyThread public void addInvalidatedCallback(androidx.paging.DataSource.InvalidatedCallback onInvalidatedCallback);
    method @AnyThread public void invalidate();
    method @WorkerThread public boolean isInvalid();
    method public <ToValue> androidx.paging.DataSource<Key,ToValue> map(androidx.arch.core.util.Function<Value,ToValue> function);
    method public <ToValue> androidx.paging.DataSource<Key,ToValue> mapByPage(androidx.arch.core.util.Function<java.util.List<Value>,java.util.List<ToValue>> function);
    method @AnyThread public void removeInvalidatedCallback(androidx.paging.DataSource.InvalidatedCallback onInvalidatedCallback);
    property @WorkerThread public boolean isInvalid;
  }

  public abstract static class DataSource.Factory<Key, Value> {
    ctor public DataSource.Factory();
    method public final kotlin.jvm.functions.Function0<androidx.paging.PagingSource<Key,Value>> asPagingSourceFactory(optional kotlinx.coroutines.CoroutineDispatcher fetchDispatcher);
    method public final kotlin.jvm.functions.Function0<androidx.paging.PagingSource<Key,Value>> asPagingSourceFactory();
    method public abstract androidx.paging.DataSource<Key,Value> create();
    method public <ToValue> androidx.paging.DataSource.Factory<Key,ToValue> map(androidx.arch.core.util.Function<Value,ToValue> function);
    method public <ToValue> androidx.paging.DataSource.Factory<Key,ToValue> mapByPage(androidx.arch.core.util.Function<java.util.List<Value>,java.util.List<ToValue>> function);
  }

  public static fun interface DataSource.InvalidatedCallback {
    method @AnyThread public void onInvalidated();
  }

  public final class FlowExtKt {
  }

  public final class HintHandlerKt {
  }

  public final class InvalidatingPagingSourceFactory<Key, Value> implements kotlin.jvm.functions.Function0<androidx.paging.PagingSource<Key,Value>> {
    ctor public InvalidatingPagingSourceFactory(kotlin.jvm.functions.Function0<? extends androidx.paging.PagingSource<Key,Value>> pagingSourceFactory);
    method public void invalidate();
    method public androidx.paging.PagingSource<Key,Value> invoke();
  }

  @Deprecated public abstract class ItemKeyedDataSource<Key, Value> extends androidx.paging.DataSource<Key,Value> {
    ctor @Deprecated public ItemKeyedDataSource();
    method @Deprecated public abstract Key getKey(Value item);
    method @Deprecated public abstract void loadAfter(androidx.paging.ItemKeyedDataSource.LoadParams<Key> params, androidx.paging.ItemKeyedDataSource.LoadCallback<Value> callback);
    method @Deprecated public abstract void loadBefore(androidx.paging.ItemKeyedDataSource.LoadParams<Key> params, androidx.paging.ItemKeyedDataSource.LoadCallback<Value> callback);
    method @Deprecated public abstract void loadInitial(androidx.paging.ItemKeyedDataSource.LoadInitialParams<Key> params, androidx.paging.ItemKeyedDataSource.LoadInitialCallback<Value> callback);
    method @Deprecated public final <ToValue> androidx.paging.ItemKeyedDataSource<Key,ToValue> map(androidx.arch.core.util.Function<Value,ToValue> function);
    method @Deprecated public final <ToValue> androidx.paging.ItemKeyedDataSource<Key,ToValue> map(kotlin.jvm.functions.Function1<? super Value,? extends ToValue> function);
    method @Deprecated public final <ToValue> androidx.paging.ItemKeyedDataSource<Key,ToValue> mapByPage(androidx.arch.core.util.Function<java.util.List<Value>,java.util.List<ToValue>> function);
    method @Deprecated public final <ToValue> androidx.paging.ItemKeyedDataSource<Key,ToValue> mapByPage(kotlin.jvm.functions.Function1<? super java.util.List<? extends Value>,? extends java.util.List<? extends ToValue>> function);
  }

  @Deprecated public abstract static class ItemKeyedDataSource.LoadCallback<Value> {
    ctor @Deprecated public ItemKeyedDataSource.LoadCallback();
    method @Deprecated public abstract void onResult(java.util.List<? extends Value> data);
  }

  @Deprecated public abstract static class ItemKeyedDataSource.LoadInitialCallback<Value> extends androidx.paging.ItemKeyedDataSource.LoadCallback<Value> {
    ctor @Deprecated public ItemKeyedDataSource.LoadInitialCallback();
    method @Deprecated public abstract void onResult(java.util.List<? extends Value> data, int position, int totalCount);
  }

  @Deprecated public static class ItemKeyedDataSource.LoadInitialParams<Key> {
    ctor @Deprecated public ItemKeyedDataSource.LoadInitialParams(Key? requestedInitialKey, int requestedLoadSize, boolean placeholdersEnabled);
    field @Deprecated public final boolean placeholdersEnabled;
    field @Deprecated public final Key? requestedInitialKey;
    field @Deprecated public final int requestedLoadSize;
  }

  @Deprecated public static class ItemKeyedDataSource.LoadParams<Key> {
    ctor @Deprecated public ItemKeyedDataSource.LoadParams(Key key, int requestedLoadSize);
    field @Deprecated public final Key key;
    field @Deprecated public final int requestedLoadSize;
  }

  public final class ItemSnapshotList<T> extends kotlin.collections.AbstractList<T> {
    ctor public ItemSnapshotList(@IntRange(from=0) int placeholdersBefore, @IntRange(from=0) int placeholdersAfter, java.util.List<? extends T> items);
    method public T? get(int index);
    method public java.util.List<T> getItems();
    method public int getPlaceholdersAfter();
    method public int getPlaceholdersBefore();
    method public int getSize();
    property public final java.util.List<T> items;
    property public final int placeholdersAfter;
    property public final int placeholdersBefore;
    property public int size;
  }

  public abstract sealed class LoadState {
    method public final boolean getEndOfPaginationReached();
    property public final boolean endOfPaginationReached;
  }

  public static final class LoadState.Error extends androidx.paging.LoadState {
    ctor public LoadState.Error(Throwable error);
    method public Throwable getError();
    property public final Throwable error;
  }

  public static final class LoadState.Loading extends androidx.paging.LoadState {
    field public static final androidx.paging.LoadState.Loading INSTANCE;
  }

  public static final class LoadState.NotLoading extends androidx.paging.LoadState {
    ctor public LoadState.NotLoading(boolean endOfPaginationReached);
  }

  public final class LoadStates {
    ctor public LoadStates(androidx.paging.LoadState refresh, androidx.paging.LoadState prepend, androidx.paging.LoadState append);
    method public androidx.paging.LoadState component1();
    method public androidx.paging.LoadState component2();
    method public androidx.paging.LoadState component3();
    method public androidx.paging.LoadStates copy(androidx.paging.LoadState refresh, androidx.paging.LoadState prepend, androidx.paging.LoadState append);
    method public androidx.paging.LoadState getAppend();
    method public androidx.paging.LoadState getPrepend();
    method public androidx.paging.LoadState getRefresh();
    property public final androidx.paging.LoadState append;
    property public final androidx.paging.LoadState prepend;
    property public final androidx.paging.LoadState refresh;
  }

  public enum LoadType {
    enum_constant public static final androidx.paging.LoadType APPEND;
    enum_constant public static final androidx.paging.LoadType PREPEND;
    enum_constant public static final androidx.paging.LoadType REFRESH;
  }

  public final class PageFetcherSnapshotKt {
  }

  @Deprecated public abstract class PageKeyedDataSource<Key, Value> extends androidx.paging.DataSource<Key,Value> {
    ctor @Deprecated public PageKeyedDataSource();
    method @Deprecated public abstract void loadAfter(androidx.paging.PageKeyedDataSource.LoadParams<Key> params, androidx.paging.PageKeyedDataSource.LoadCallback<Key,Value> callback);
    method @Deprecated public abstract void loadBefore(androidx.paging.PageKeyedDataSource.LoadParams<Key> params, androidx.paging.PageKeyedDataSource.LoadCallback<Key,Value> callback);
    method @Deprecated public abstract void loadInitial(androidx.paging.PageKeyedDataSource.LoadInitialParams<Key> params, androidx.paging.PageKeyedDataSource.LoadInitialCallback<Key,Value> callback);
    method @Deprecated public final <ToValue> androidx.paging.PageKeyedDataSource<Key,ToValue> map(androidx.arch.core.util.Function<Value,ToValue> function);
    method @Deprecated public final <ToValue> androidx.paging.PageKeyedDataSource<Key,ToValue> map(kotlin.jvm.functions.Function1<? super Value,? extends ToValue> function);
    method @Deprecated public final <ToValue> androidx.paging.PageKeyedDataSource<Key,ToValue> mapByPage(androidx.arch.core.util.Function<java.util.List<Value>,java.util.List<ToValue>> function);
    method @Deprecated public final <ToValue> androidx.paging.PageKeyedDataSource<Key,ToValue> mapByPage(kotlin.jvm.functions.Function1<? super java.util.List<? extends Value>,? extends java.util.List<? extends ToValue>> function);
  }

  @Deprecated public abstract static class PageKeyedDataSource.LoadCallback<Key, Value> {
    ctor @Deprecated public PageKeyedDataSource.LoadCallback();
    method @Deprecated public abstract void onResult(java.util.List<? extends Value> data, Key? adjacentPageKey);
  }

  @Deprecated public abstract static class PageKeyedDataSource.LoadInitialCallback<Key, Value> {
    ctor @Deprecated public PageKeyedDataSource.LoadInitialCallback();
    method @Deprecated public abstract void onResult(java.util.List<? extends Value> data, int position, int totalCount, Key? previousPageKey, Key? nextPageKey);
    method @Deprecated public abstract void onResult(java.util.List<? extends Value> data, Key? previousPageKey, Key? nextPageKey);
  }

  @Deprecated public static class PageKeyedDataSource.LoadInitialParams<Key> {
    ctor @Deprecated public PageKeyedDataSource.LoadInitialParams(int requestedLoadSize, boolean placeholdersEnabled);
    field @Deprecated public final boolean placeholdersEnabled;
    field @Deprecated public final int requestedLoadSize;
  }

  @Deprecated public static class PageKeyedDataSource.LoadParams<Key> {
    ctor @Deprecated public PageKeyedDataSource.LoadParams(Key key, int requestedLoadSize);
    field @Deprecated public final Key key;
    field @Deprecated public final int requestedLoadSize;
  }

  @Deprecated public abstract class PagedList<T> extends java.util.AbstractList<T> {
    method @Deprecated public final void addWeakCallback(java.util.List<? extends T>? previousSnapshot, androidx.paging.PagedList.Callback callback);
    method @Deprecated public final void addWeakCallback(androidx.paging.PagedList.Callback callback);
    method @Deprecated public final void addWeakLoadStateListener(kotlin.jvm.functions.Function2<? super androidx.paging.LoadType,? super androidx.paging.LoadState,kotlin.Unit> listener);
    method @Deprecated public abstract void detach();
    method @Deprecated public T? get(int index);
    method @Deprecated public final androidx.paging.PagedList.Config getConfig();
    method @Deprecated public final androidx.paging.DataSource<?,T> getDataSource();
    method @Deprecated public abstract Object? getLastKey();
    method @Deprecated public final int getLoadedCount();
    method @Deprecated public final int getPositionOffset();
    method @Deprecated public int getSize();
    method @Deprecated public abstract boolean isDetached();
    method @Deprecated public boolean isImmutable();
    method @Deprecated public final void loadAround(int index);
    method @Deprecated public final void removeWeakCallback(androidx.paging.PagedList.Callback callback);
    method @Deprecated public final void removeWeakLoadStateListener(kotlin.jvm.functions.Function2<? super androidx.paging.LoadType,? super androidx.paging.LoadState,kotlin.Unit> listener);
    method @Deprecated public void retry();
    method @Deprecated public final java.util.List<T> snapshot();
    property public final androidx.paging.PagedList.Config config;
    property @Deprecated public final androidx.paging.DataSource<?,T> dataSource;
    property public abstract boolean isDetached;
    property public boolean isImmutable;
    property public abstract Object? lastKey;
    property public final int loadedCount;
    property public final int positionOffset;
    property public int size;
  }

  @Deprecated @MainThread public abstract static class PagedList.BoundaryCallback<T> {
    ctor @Deprecated public PagedList.BoundaryCallback();
    method @Deprecated public void onItemAtEndLoaded(T itemAtEnd);
    method @Deprecated public void onItemAtFrontLoaded(T itemAtFront);
    method @Deprecated public void onZeroItemsLoaded();
  }

  @Deprecated public static final class PagedList.Builder<Key, Value> {
    ctor @Deprecated public PagedList.Builder(androidx.paging.DataSource<Key,Value> dataSource, androidx.paging.PagedList.Config config);
    ctor @Deprecated public PagedList.Builder(androidx.paging.DataSource<Key,Value> dataSource, int pageSize);
    ctor @Deprecated public PagedList.Builder(androidx.paging.PagingSource<Key,Value> pagingSource, androidx.paging.PagingSource.LoadResult.Page<Key,Value> initialPage, androidx.paging.PagedList.Config config);
    ctor @Deprecated public PagedList.Builder(androidx.paging.PagingSource<Key,Value> pagingSource, androidx.paging.PagingSource.LoadResult.Page<Key,Value> initialPage, int pageSize);
    method @Deprecated public androidx.paging.PagedList<Value> build();
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setBoundaryCallback(androidx.paging.PagedList.BoundaryCallback<Value>? boundaryCallback);
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setCoroutineScope(kotlinx.coroutines.CoroutineScope coroutineScope);
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setFetchDispatcher(kotlinx.coroutines.CoroutineDispatcher fetchDispatcher);
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setFetchExecutor(java.util.concurrent.Executor fetchExecutor);
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setInitialKey(Key? initialKey);
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setNotifyDispatcher(kotlinx.coroutines.CoroutineDispatcher notifyDispatcher);
    method @Deprecated public androidx.paging.PagedList.Builder<Key,Value> setNotifyExecutor(java.util.concurrent.Executor notifyExecutor);
  }

  @Deprecated public abstract static class PagedList.Callback {
    ctor @Deprecated public PagedList.Callback();
    method @Deprecated public abstract void onChanged(int position, int count);
    method @Deprecated public abstract void onInserted(int position, int count);
    method @Deprecated public abstract void onRemoved(int position, int count);
  }

  @Deprecated public static final class PagedList.Config {
    field @Deprecated public static final int MAX_SIZE_UNBOUNDED = 2147483647; // 0x7fffffff
    field @Deprecated public final boolean enablePlaceholders;
    field @Deprecated public final int initialLoadSizeHint;
    field @Deprecated public final int maxSize;
    field @Deprecated public final int pageSize;
    field @Deprecated public final int prefetchDistance;
  }

  @Deprecated public static final class PagedList.Config.Builder {
    ctor @Deprecated public PagedList.Config.Builder();
    method @Deprecated public androidx.paging.PagedList.Config build();
    method @Deprecated public androidx.paging.PagedList.Config.Builder setEnablePlaceholders(boolean enablePlaceholders);
    method @Deprecated public androidx.paging.PagedList.Config.Builder setInitialLoadSizeHint(@IntRange(from=1) int initialLoadSizeHint);
    method @Deprecated public androidx.paging.PagedList.Config.Builder setMaxSize(@IntRange(from=2) int maxSize);
    method @Deprecated public androidx.paging.PagedList.Config.Builder setPageSize(@IntRange(from=1) int pageSize);
    method @Deprecated public androidx.paging.PagedList.Config.Builder setPrefetchDistance(@IntRange(from=0) int prefetchDistance);
  }

  public final class PagedListConfigKt {
  }

  public final class PagedListKt {
  }

  public final class Pager<Key, Value> {
    ctor public Pager(androidx.paging.PagingConfig config, optional Key? initialKey, kotlin.jvm.functions.Function0<? extends androidx.paging.PagingSource<Key,Value>> pagingSourceFactory);
    ctor public Pager(androidx.paging.PagingConfig config, kotlin.jvm.functions.Function0<? extends androidx.paging.PagingSource<Key,Value>> pagingSourceFactory);
    method public kotlinx.coroutines.flow.Flow<androidx.paging.PagingData<Value>> getFlow();
    property public final kotlinx.coroutines.flow.Flow<androidx.paging.PagingData<Value>> flow;
  }

  public final class PagingConfig {
    ctor public PagingConfig(int pageSize, optional @IntRange(from=0) int prefetchDistance, optional boolean enablePlaceholders, optional @IntRange(from=1) int initialLoadSize, optional @IntRange(from=2) int maxSize, optional int jumpThreshold);
    ctor public PagingConfig(int pageSize, optional @IntRange(from=0) int prefetchDistance, optional boolean enablePlaceholders, optional @IntRange(from=1) int initialLoadSize, optional @IntRange(from=2) int maxSize);
    ctor public PagingConfig(int pageSize, optional @IntRange(from=0) int prefetchDistance, optional boolean enablePlaceholders, optional @IntRange(from=1) int initialLoadSize);
    ctor public PagingConfig(int pageSize, optional @IntRange(from=0) int prefetchDistance, optional boolean enablePlaceholders);
    ctor public PagingConfig(int pageSize, optional @IntRange(from=0) int prefetchDistance);
    ctor public PagingConfig(int pageSize);
    field public static final androidx.paging.PagingConfig.Companion Companion;
    field public static final int MAX_SIZE_UNBOUNDED = 2147483647; // 0x7fffffff
    field public final boolean enablePlaceholders;
    field public final int initialLoadSize;
    field public final int jumpThreshold;
    field public final int maxSize;
    field public final int pageSize;
    field public final int prefetchDistance;
  }

  public static final class PagingConfig.Companion {
  }

  public final class PagingData<T> {
    method public static <T> androidx.paging.PagingData<T> empty();
    method public static <T> androidx.paging.PagingData<T> from(java.util.List<? extends T> data);
    field public static final androidx.paging.PagingData.Companion Companion;
  }

  public static final class PagingData.Companion {
    method public <T> androidx.paging.PagingData<T> empty();
    method public <T> androidx.paging.PagingData<T> from(java.util.List<? extends T> data);
  }

  public final class PagingDataTransforms {
    method @CheckResult public static <T> androidx.paging.PagingData<T> filter(androidx.paging.PagingData<T>, java.util.concurrent.Executor executor, kotlin.jvm.functions.Function1<? super T,java.lang.Boolean> predicate);
    method @CheckResult public static <T, R> androidx.paging.PagingData<R> flatMap(androidx.paging.PagingData<T>, java.util.concurrent.Executor executor, kotlin.jvm.functions.Function1<? super T,? extends java.lang.Iterable<? extends R>> transform);
    method @CheckResult public static <T> androidx.paging.PagingData<T> insertFooterItem(androidx.paging.PagingData<T>, optional androidx.paging.TerminalSeparatorType terminalSeparatorType, T item);
    method @CheckResult public static <T> androidx.paging.PagingData<T> insertFooterItem(androidx.paging.PagingData<T>, T item);
    method @CheckResult public static <T> androidx.paging.PagingData<T> insertHeaderItem(androidx.paging.PagingData<T>, optional androidx.paging.TerminalSeparatorType terminalSeparatorType, T item);
    method @CheckResult public static <T> androidx.paging.PagingData<T> insertHeaderItem(androidx.paging.PagingData<T>, T item);
    method @CheckResult public static <R, T extends R> androidx.paging.PagingData<R> insertSeparators(androidx.paging.PagingData<T>, optional androidx.paging.TerminalSeparatorType terminalSeparatorType, java.util.concurrent.Executor executor, kotlin.jvm.functions.Function2<? super T,? super T,? extends R> generator);
    method @CheckResult public static <R, T extends R> androidx.paging.PagingData<R> insertSeparators(androidx.paging.PagingData<T>, java.util.concurrent.Executor executor, kotlin.jvm.functions.Function2<? super T,? super T,? extends R> generator);
    method @CheckResult public static <T, R> androidx.paging.PagingData<R> map(androidx.paging.PagingData<T>, java.util.concurrent.Executor executor, kotlin.jvm.functions.Function1<? super T,? extends R> transform);
  }

  public abstract class PagingSource<Key, Value> {
    ctor public PagingSource();
    method public final boolean getInvalid();
    method public boolean getJumpingSupported();
    method public boolean getKeyReuseSupported();
    method public abstract Key? getRefreshKey(androidx.paging.PagingState<Key,Value> state);
    method public final void invalidate();
    method public abstract suspend Object? load(androidx.paging.PagingSource.LoadParams<Key> params, kotlin.coroutines.Continuation<? super androidx.paging.PagingSource.LoadResult<Key,Value>> p);
    method public final void registerInvalidatedCallback(kotlin.jvm.functions.Function0<kotlin.Unit> onInvalidatedCallback);
    method public final void unregisterInvalidatedCallback(kotlin.jvm.functions.Function0<kotlin.Unit> onInvalidatedCallback);
    property public final boolean invalid;
    property public boolean jumpingSupported;
    property public boolean keyReuseSupported;
  }

  public abstract static sealed class PagingSource.LoadParams<Key> {
    method public abstract Key? getKey();
    method public final int getLoadSize();
    method public final boolean getPlaceholdersEnabled();
    property public abstract Key? key;
    property public final int loadSize;
    property public final boolean placeholdersEnabled;
  }

  public static final class PagingSource.LoadParams.Append<Key> extends androidx.paging.PagingSource.LoadParams<Key> {
    ctor public PagingSource.LoadParams.Append(Key key, int loadSize, boolean placeholdersEnabled);
    method public Key getKey();
    property public Key key;
  }

  public static final class PagingSource.LoadParams.Prepend<Key> extends androidx.paging.PagingSource.LoadParams<Key> {
    ctor public PagingSource.LoadParams.Prepend(Key key, int loadSize, boolean placeholdersEnabled);
    method public Key getKey();
    property public Key key;
  }

  public static final class PagingSource.LoadParams.Refresh<Key> extends androidx.paging.PagingSource.LoadParams<Key> {
    ctor public PagingSource.LoadParams.Refresh(Key? key, int loadSize, boolean placeholdersEnabled);
    method public Key? getKey();
    property public Key? key;
  }

  public abstract static sealed class PagingSource.LoadResult<Key, Value> {
  }

  public static final class PagingSource.LoadResult.Error<Key, Value> extends androidx.paging.PagingSource.LoadResult<Key,Value> {
    ctor public PagingSource.LoadResult.Error(Throwable throwable);
    method public Throwable component1();
    method public androidx.paging.PagingSource.LoadResult.Error<Key,Value> copy(Throwable throwable);
    method public Throwable getThrowable();
    property public final Throwable throwable;
  }

  public static final class PagingSource.LoadResult.Invalid<Key, Value> extends androidx.paging.PagingSource.LoadResult<Key,Value> {
    ctor public PagingSource.LoadResult.Invalid();
  }

  public static final class PagingSource.LoadResult.Page<Key, Value> extends androidx.paging.PagingSource.LoadResult<Key,Value> {
    ctor public PagingSource.LoadResult.Page(java.util.List<? extends Value> data, Key? prevKey, Key? nextKey, optional @IntRange(from=COUNT_UNDEFINED.toLong()) int itemsBefore, optional @IntRange(from=COUNT_UNDEFINED.toLong()) int itemsAfter);
    ctor public PagingSource.LoadResult.Page(java.util.List<? extends Value> data, Key? prevKey, Key? nextKey);
    method public java.util.List<Value> component1();
    method public Key? component2();
    method public Key? component3();
    method public int component4();
    method public int component5();
    method public androidx.paging.PagingSource.LoadResult.Page<Key,Value> copy(java.util.List<? extends Value> data, Key? prevKey, Key? nextKey, @IntRange(from=-2147483648L) int itemsBefore, @IntRange(from=-2147483648L) int itemsAfter);
    method public java.util.List<Value> getData();
    method public int getItemsAfter();
    method public int getItemsBefore();
    method public Key? getNextKey();
    method public Key? getPrevKey();
    property public final java.util.List<Value> data;
    property public final int itemsAfter;
    property public final int itemsBefore;
    property public final Key? nextKey;
    property public final Key? prevKey;
    field public static final int COUNT_UNDEFINED = -2147483648; // 0x80000000
    field public static final androidx.paging.PagingSource.LoadResult.Page.Companion Companion;
  }

  public static final class PagingSource.LoadResult.Page.Companion {
  }

  public final class PagingSourceKt {
  }

  public final class PagingState<Key, Value> {
    ctor public PagingState(java.util.List<androidx.paging.PagingSource.LoadResult.Page<Key,Value>> pages, Integer? anchorPosition, androidx.paging.PagingConfig config, @IntRange(from=0) int leadingPlaceholderCount);
    method public Value? closestItemToPosition(int anchorPosition);
    method public androidx.paging.PagingSource.LoadResult.Page<Key,Value>? closestPageToPosition(int anchorPosition);
    method public Value? firstItemOrNull();
    method public Integer? getAnchorPosition();
    method public androidx.paging.PagingConfig getConfig();
    method public java.util.List<androidx.paging.PagingSource.LoadResult.Page<Key,Value>> getPages();
    method public boolean isEmpty();
    method public Value? lastItemOrNull();
    property public final Integer? anchorPosition;
    property public final androidx.paging.PagingConfig config;
    property public final java.util.List<androidx.paging.PagingSource.LoadResult.Page<Key,Value>> pages;
  }

  @Deprecated public abstract class PositionalDataSource<T> extends androidx.paging.DataSource<java.lang.Integer,T> {
    ctor @Deprecated public PositionalDataSource();
    method @Deprecated public static final int computeInitialLoadPosition(androidx.paging.PositionalDataSource.LoadInitialParams params, int totalCount);
    method @Deprecated public static final int computeInitialLoadSize(androidx.paging.PositionalDataSource.LoadInitialParams params, int initialLoadPosition, int totalCount);
    method @Deprecated @WorkerThread public abstract void loadInitial(androidx.paging.PositionalDataSource.LoadInitialParams params, androidx.paging.PositionalDataSource.LoadInitialCallback<T> callback);
    method @Deprecated @WorkerThread public abstract void loadRange(androidx.paging.PositionalDataSource.LoadRangeParams params, androidx.paging.PositionalDataSource.LoadRangeCallback<T> callback);
    method @Deprecated public final <V> androidx.paging.PositionalDataSource<V> map(androidx.arch.core.util.Function<T,V> function);
    method @Deprecated public final <V> androidx.paging.PositionalDataSource<V> map(kotlin.jvm.functions.Function1<? super T,? extends V> function);
    method @Deprecated public final <V> androidx.paging.PositionalDataSource<V> mapByPage(androidx.arch.core.util.Function<java.util.List<T>,java.util.List<V>> function);
    method @Deprecated public final <V> androidx.paging.PositionalDataSource<V> mapByPage(kotlin.jvm.functions.Function1<? super java.util.List<? extends T>,? extends java.util.List<? extends V>> function);
  }

  @Deprecated public abstract static class PositionalDataSource.LoadInitialCallback<T> {
    ctor @Deprecated public PositionalDataSource.LoadInitialCallback();
    method @Deprecated public abstract void onResult(java.util.List<? extends T> data, int position, int totalCount);
    method @Deprecated public abstract void onResult(java.util.List<? extends T> data, int position);
  }

  @Deprecated public static class PositionalDataSource.LoadInitialParams {
    ctor @Deprecated public PositionalDataSource.LoadInitialParams(int requestedStartPosition, int requestedLoadSize, int pageSize, boolean placeholdersEnabled);
    field @Deprecated public final int pageSize;
    field @Deprecated public final boolean placeholdersEnabled;
    field @Deprecated public final int requestedLoadSize;
    field @Deprecated public final int requestedStartPosition;
  }

  @Deprecated public abstract static class PositionalDataSource.LoadRangeCallback<T> {
    ctor @Deprecated public PositionalDataSource.LoadRangeCallback();
    method @Deprecated public abstract void onResult(java.util.List<? extends T> data);
  }

  @Deprecated public static class PositionalDataSource.LoadRangeParams {
    ctor @Deprecated public PositionalDataSource.LoadRangeParams(int startPosition, int loadSize);
    field @Deprecated public final int loadSize;
    field @Deprecated public final int startPosition;
  }

  public final class RemoteMediatorAccessorKt {
  }

  public final class SeparatorsKt {
  }

  public final class SimpleChannelFlowKt {
  }

  public enum TerminalSeparatorType {
    enum_constant public static final androidx.paging.TerminalSeparatorType FULLY_COMPLETE;
    enum_constant public static final androidx.paging.TerminalSeparatorType SOURCE_COMPLETE;
  }

}

