// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Constants for the names of preferences related to Google Drive.

#ifndef COMPONENTS_DRIVE_DRIVE_PREF_NAMES_H_
#define COMPONENTS_DRIVE_DRIVE_PREF_NAMES_H_

namespace drive {
namespace prefs {

extern const char kDisableDrive[];
extern const char kDisableDriveOverCellular[];
extern const char kDriveFsProfileSalt[];
extern const char kDriveFsPinnedMigrated[];
extern const char kDriveFsWasLaunchedAtLeastOnce[];

}  // namespace prefs
}  // namespace drive

#endif  // COMPONENTS_DRIVE_DRIVE_PREF_NAMES_H_
