// Copyright (c) 2022, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

package j$.nio.file;

public class StandardWatchEventKinds implements j$.nio.file.WatchEvent.Kind {

  public static final j$.nio.file.WatchEvent.Kind ENTRY_CREATE = null;
  public static final j$.nio.file.WatchEvent.Kind ENTRY_DELETE = null;
  public static final j$.nio.file.WatchEvent.Kind ENTRY_MODIFY = null;
  public static final j$.nio.file.WatchEvent.Kind OVERFLOW = null;
}
