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

#ifndef CONSTANTS_PAGE_OBJECT_H_
#define CONSTANTS_PAGE_OBJECT_H_

namespace pdfium {
namespace page_object {

extern const char kType[];
extern const char kParent[];
extern const char kResources[];
extern const char kMediaBox[];
extern const char kCropBox[];
extern const char kBleedBox[];
extern const char kTrimBox[];
extern const char kArtBox[];
extern const char kContents[];
extern const char kRotate[];

}  // namespace page_object
}  // namespace pdfium

#endif  // CONSTANTS_PAGE_OBJECT_H_
