chromium/components/sync/engine/commit_and_get_updates_types.h

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

#ifndef COMPONENTS_SYNC_ENGINE_COMMIT_AND_GET_UPDATES_TYPES_H_
#define COMPONENTS_SYNC_ENGINE_COMMIT_AND_GET_UPDATES_TYPES_H_

#include <stdint.h>

#include <memory>
#include <string>
#include <vector>

#include "base/time/time.h"
#include "components/sync/base/client_tag_hash.h"
#include "components/sync/base/unique_position.h"
#include "components/sync/protocol/entity_data.h"
#include "components/sync/protocol/sync.pb.h"

namespace syncer {

static const int64_t kUncommittedVersion =;

enum class SyncCommitError {};

struct CommitRequestData {};

// Represents a successfully committed item.
struct CommitResponseData {};

// Represents an item, which wasn't committed due to an error.
struct FailedCommitResponseData {};

struct UpdateResponseData {};

CommitRequestDataList;
CommitResponseDataList;
FailedCommitResponseDataList;
UpdateResponseDataList;

// Returns the estimate of dynamically allocated memory in bytes.
size_t EstimateMemoryUsage(const CommitRequestData& value);
size_t EstimateMemoryUsage(const UpdateResponseData& value);

}  // namespace syncer

#endif  // COMPONENTS_SYNC_ENGINE_COMMIT_AND_GET_UPDATES_TYPES_H_